码迷,mamicode.com
首页 > 编程语言 > 详细

Java PrepareStatement

时间:2017-08-25 21:41:51      阅读:289      评论:0      收藏:0      [点我收藏+]

标签:关闭数据库   catch   manager   address   UI   username   jdbc   批量   cep   

1.PreparedStatement是预编译的,对于批量处理可以大大提高效率. 也叫JDBC存储过程
2.使用 Statement 对象。在对数据库只执行一次性存取的时侯,用 Statement 对象进行处理。PreparedStatement 对象的开销比Statement大,对于一次性操作并不会带来额外的好处。
3.statement每次执行sql语句,相关数据库都要执行sql语句的编译,preparedstatement是预编译得, preparedstatement支持批处理

 

用法:

conn = DriverManager.getConnection(url, userName, password); 

//创建PreparedStatement语句 
PreparedStatement pstmtDelete = conn.prepareStatement( 
"DELETE FROM student WHERE stu_id>=?"); 
PreparedStatement pstmtInsert = conn.prepareStatement( 
"INSERT INTO student VALUES(?, ?, ?, ?)"); 
PreparedStatement pstmtSelect = conn.prepareStatement( 
"SELECT * FROM student WHERE stu_id>=? " + 
"ORDER BY stu_id"); 

int Integer.toString(id)); 

//多次执行同一语句 
for (int i=0; i<3; i++, id++) { 

//使用setXXX方法设置IN参数 
pstmtDelete.setString(1, Integer.toString(id)); 

pstmtInsert.setString(1, Integer.toString(id)); 
pstmtInsert.setString(2, "name"+id); 
pstmtInsert.setString(3, "city"+id); 
pstmtInsert.setDate(4, new Date(78, 2, id)); 

//执行PreparedStatement语句 
pstmtDelete.executeUpdate(); 
pstmtInsert.executeUpdate(); 
ResultSet rs = pstmtSelect.executeQuery(); 

System.out.println(""); 
System.out.println("第 " + (i+1) + " 次循环后的结果集为:"); 

//显示返回的结果集 
while (rs.next()) { 
String stuID = rs.getString(1); 
String String address = rs.getString(3); 
String birthday= rs.getString(4); 
System.out.println(stuID + " " + 
name + " " + address + " " + birthday); 
} 
} 

pstmtDelete.close(); 
pstmtInsert.close(); 
pstmtSelect.close(); 

} catch(SQLException e) { 
System.out.println("出现SQLException异常"); 
} finally { 
//关闭语句和数据库连接 
try { 
if (conn != null) conn.close(); 
} catch(SQLException e) { 
System.out.println("关闭数据库连接时出现异常"); 
} 
} 

} 

  

Java PrepareStatement

标签:关闭数据库   catch   manager   address   UI   username   jdbc   批量   cep   

原文地址:http://www.cnblogs.com/callyblog/p/7429634.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!