本文目录一览:
- 1、基于JSP开发:如何创建及修改数据库表
- 2、jsp页面连接数据库(如MySQL)动态生成可操作的表格
- 3、在JSP页面中如何用SQL语句创建数据库
- 4、如何根据JSP代码创建SQL数据库?
- 5、jsp中怎样自动创建数据库和表
基于JSP开发:如何创建及修改数据库表
SQL语言才是直接处理数据库的语言在目前常用的关系数据库中,都支持SQL语言的操作。
创建、修改、删除数据库表
创建数据库表可以用CREATE
TABLE指令,这个指令的使用语法如下:
CREATE
TABLE
表名
{
列名1
数据类型
[DEFAULT(默认值)]
[NOT
NULL]
[UNIQUE],
列名2
数据类型
[DEFAULT(默认值)]
[NOT
NULL]
[UNIQUE]
...
[PRIMARY
KEY(列名)]
[FOREIGN
KEY(列名)
REFRENCES(列名)]
}
其中,创建的数据库表中可以有多个列定义,但是主键PRIMARY
KEY只有一个,外键FOREIGN
KEY可以有多个。
在列定义中,DEFAULT是默认值,NOT
NULL定义列不可以为空,UNIQUE定义列的值唯一,即每一行的记录中列的值不能相同。在主键的定义中,可以从上面定义的列中选取一列作为主键。在外键的定义中,列名是上面定义的列,这个列对应的是另一个数据库表中的主键,用来表述数据库表之间的引用关系。
jsp页面连接数据库(如MySQL)动态生成可操作的表格
我来一点一点的回答
1 连接mysql,动态生成表格,这个动态的含义不是很明确,目前网上关于使用JDBC连接mysql数据库的文章很多,我就不复制粘贴了,请你百度一下,一大把。
2 点击或者是移动到某行,高亮显示。这里提供一个方法,在标签tr里加上onMouseOver和onMouseOut事件,配合js(或者jquery)修改css即可实现移动到某行高亮,点击的话应该是使用click事件。
3 根据你提供的图片,选择某行,应该是通过checkbox标签实现的,那需要使用js对checkbox标签进行事件绑定之类的。
4 跳转和弹窗都很简单,在js中,使用window.open('要跳转的页面路径','_self')进行跳转,window.open('要弹窗的页面路径','_top')进行弹窗就OK了。
5 查询的跳转,请参照第4点
6 表格分页,有很多优秀的js插件可以实现你需要的效果,这里推荐一个datatables。
最后,估计以你目前的技术,要实现你需要的功能,还要多下工夫,好好专研一下js和css才行。
如果你是一窍不通,建议你抓紧时间,重头学起。只要不是太笨,或者基础太差的话,一个月时间基本上就够了。
在JSP页面中如何用SQL语句创建数据库
这个好象不可以吧
如果没有
databasename
的话
JDBC就不知道要连到哪个目的地
跟ODBC一样
没有数据源是不可以的
或者你换一个数据库
用
oracle
应该可以吧
oracle不需要建数据库
直接建一个表空间
然后建表就行了
不过之前你要先把用户和授权做好
如何根据JSP代码创建SQL数据库?
代码如下:
建立连接
package Test;
import java.sql.*;
public class ConnectionManager {
private static final String DRIVER_CLASS="com.microsoft.sqlserver.jdbc.SQLServerDriver"; //定义常量(下同)
private static final String DATABASE="jdbc:sqlserver://localhost:1433;DatabaseName=news";
private static final String DATABASE_USER = "sa";
private static final String DATAVSES_PASS = "123456";
public static Connection getConnection(){
Connection conn = null;
try {
Class.forName(DRIVER_CLASS);
conn = DriverManager.getConnection(DATABASE,DATABASE_USER,DATAVSES_PASS);
} catch (Exception e) {
e.printStackTrace();
}
return conn;
}
public static void clossConnection (Connection connection){ //释放资源(下同)
try {
if (connection !=null !connection.isClosed()){
connection.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void closeResultSet(ResultSet rs){
try {
if (rs!=null){
rs.close();
rs = null ;
}
} catch (Exception e) {
e.printStackTrace();
}
}
public static void closeStatement(PreparedStatement pstmt) {
try {
if (pstmt != null){
pstmt.close();
pstmt = null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
建立实体类
package Test;
import java.util.Date;
public class FirestLevelTitle {
private int id ; // ID
private String titleName; //名称
private String creator ; //创建者
private Date createTime ;//创建时间
public FirestLevelTitle(int id ,String titleName ,String creator,Date createTime){
this.id = id;
this.titleName = titleName;
this.creator = creator;
this.createTime = createTime;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public String getCreator() {
return creator;
}
public void setCreator(String creator) {
this.creator = creator;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getTitleName() {
return titleName;
}
public void setTitleName(String titleName) {
this.titleName = titleName;
}
}
通过jdbc 访问数据库
package Test;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
public class FirestLeveTitleDbOpereation {
public List getAllFirestLeveTitleList(){ //返回FirestLevelTitle对象的集合
List list = new ArrayList(); //定义数组
Connection conn = null ;
PreparedStatement pstmt = null ;
ResultSet rs = null ;
try {
conn = ConnectionManager.getConnection(); //建立连接
String sql = "select * from FirstLevelTitle order by CreatorTime desc"; //sql语句
pstmt = conn.prepareStatement(sql); //PreparedStatement 语句
rs = pstmt.executeQuery(); //查询结果集
while (rs.next()) { //处理结果
int id = rs.getInt("id");
String title = rs.getString("TitleName");
String createw = rs.getString("Creator");
Date time = rs.getDate("CreatorTime");
//把个属性封装到FirestLevelTitle 对象中
FirestLevelTitle fTitle = new FirestLevelTitle(id,title,createw,time);
list.add(fTitle); //添加到集合中
}
} catch (Exception e) {
e.printStackTrace();
}
finally{ //释放资源
ConnectionManager.closeResultSet(rs);
ConnectionManager.closeStatement(pstmt);
ConnectionManager.clossConnection(conn);
}
return list;
}
}
jsp页面
%@ page language="java" pageEncoding="GBK"
import="java.util.* ,Test.*" //添加引用
%
html
head
/head
body
%
FirestLeveTitleDbOpereation first = new FirestLeveTitleDbOpereation();
List list = first.getAllFirestLeveTitleList();
if (list.size()!=0){
for(int i = 0;i list.size();i++){ //循环遍历
FirestLevelTitle fTitle = (FirestLevelTitle)list.get(i);
%
td
表名是: %=fTitle.getTitleName()% br/
id是:%=fTitle.getId() %br/
时间是:%=fTitle.getCreateTime() %br/
/td
%
}
}
%
/body
/html
jsp中怎样自动创建数据库和表
这是Sun公司下一步的开发目标,楼主很强大,已经把它公布出来了,马上各大报刊要抢这条新闻了