📄 jdbc2.0简介.txt
字号:
光标的上下滚动,影响效率不建议使用,先读完所有数据放到内存中,然后对他进行光标操作
// 声明结果集可上下移动
///可以查询数据
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY) ;
当 rs = stmt.executeQuery(sql) ;
rs.absolute(2) ;//光标移动到第二条记录处
rs.next() ;//光标从前到后的滚动
rs.previous(2) ;//光标从最后第二条开始向前移动
//可以更新数据
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE) ;
rs.updateString("name","名字") ;
rs.updateRow() ;
//插入数据
rs.moveToInsertRow() ;
rs.updateString("name","修改名字") ;
rs.insertRow() ;
//删除
rs.deleteRow() ;
///////////以上光标操作不建议使用,以下是批处理方式/////////
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<%!
// 定义数据库驱动程序
String DBDRIVER = "com.mysql.jdbc.Driver" ;
// 定义数据库连接地址
String DBURL = "jdbc:mysql://localhost/bbs?user=root&password=root" ;
// 定义数据库连接对象,属于java.sql包中的接口
Connection conn = null ;
// 定义Statement对象,用于操作数据库
Statement stmt = null ;
// 定义一字符串变量,用于保存SQL语句
String sql = null ;
// 查询返回的结果集对象
ResultSet rs = null ;
%>
<%
// 1、加载驱动程序
try
{
Class.forName(DBDRIVER) ;
}
catch(Exception e)
{
// 此处使用out.print是处于演示目的,在实际开发中所有的错误消息,绝对不能够通过out.print打印,否则会存在安全问题
out.println("数据库驱动程序加载失败!!!") ;
}
// 2、连接数据库
try
{
conn = DriverManager.getConnection(DBURL) ;
}
catch(Exception e)
{
out.println("数据库连接失败!!!") ;
}
// 3、操作数据库
try
{
stmt = conn.createStatement() ;
// 取消自动提交
conn.setAutoCommit(false) ;
stmt.addBatch("INSERT INTO article (title,cont,isleaf) VALUES ('我的批处理1','zzz1zzz',218)") ;
stmt.addBatch("INSERT INTO article (title,cont,isleaf) VALUES ('我的批处理2','zzz2zzz',228)") ;
stmt.addBatch("INSERT INTO article (title,cont,isleaf) VALUES ('我的批处理3','zz3zzzz',238)") ;
stmt.addBatch("INSERT INTO article (title,cont,isleaf) VALUES ('我的批处理4','zz4zzzz',248)") ;
stmt.addBatch("INSERT INTO article (title,cont,isleaf) VALUES ('我的批处理5','zz5zzzz',258)") ;
stmt.addBatch("INSERT INTO article (title,cont,isleaf) VALUES ('我的批处理6','zzz6zzz',268)") ;
stmt.addBatch("INSERT INTO article (title,cont,isleaf) VALUES ('我的批处理7','zzz8zzz',278)") ;
stmt.addBatch("INSERT INTO article (title,cont,isleaf) VALUES ('我的批处理8','zzz7zzz',288)") ;
stmt.addBatch("INSERT INTO article (title,cont,isleaf) VALUES ('我的批处理9','zzz9zzz',298)") ;
stmt.addBatch("INSERT INTO article (title,cont,isleaf) VALUES ('我的批处理a','zzzfzzz',208)") ;
stmt.addBatch("INSERT INTO article (title,cont,isleaf) VALUES ('我的批处理b','zzzszzz',2g8)") ;
stmt.addBatch("INSERT INTO article (title,cont,isleaf) VALUES ('我的批处理c','zzzzwzz',2d8)") ;
// 执行批处理语句
stmt.executeBatch() ;
// 提交事务,真正向数据库中插入数据
conn.commit() ;
}
catch(Exception e)
{
// 将数据库回滚
try
{
conn.rollback() ;
}
catch(Exception e1)
{}
out.println("操作数据库失败!1!!") ;
}
// 4、关闭数据库
try
{
// 关闭操作
stmt.close() ;
// 关闭连接
conn.close() ;
}
catch(Exception e)
{
out.println("数据库关闭失败!!!") ;
}
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -