更新時間:2022-08-25 來源:黑馬程序員 瀏覽量:
當(dāng)向數(shù)據(jù)庫發(fā)送多條不同的SQL語句時,可以使用Statement實現(xiàn)批處理。Statement通過addBatch()方法添加一條SQL語句,通過executeBatch()方法批量執(zhí)行SQL語句。為了幫助大家更好地學(xué)習(xí)如何使用Statement實現(xiàn)批處理,下面通過一個案例來演示。
Example10.java
package cn.itcast.jdbc.exanple; inport java.sql.Connection; inport java.sgl.Statenent; inport cn.itcast.jdbc.example.utils.JDBCUtils; public class Example10 ( public static void main (String[] args) { Connection conn=null; Statement stmt=nul1; try { //加載數(shù)據(jù)庫驅(qū)動 conn=JDBCUtils.getConnection(); stmt=conn.createStatement (); //SQL語句 String sgl1="DROP TABLE IF EXISTS school"; String sql2="CREATE TABLE school(id int,name varchar(20))"; String sql3="INSERT INTO school VALUES(2,'傳智播客')"; String aql4="UPDATE school SET id=1"; //Statement 批處理 sQL語句 stmt.addBatch(sql1); stmt.addBatch(sq12); stmt.addBatch(sq13); stmt.addBatch(sql4); stmt.executeBatch(); } catch (Exception e) { e.printStackTrace(); }finally{ //釋放資源 ARpCUtils.release(nul1, stmt, conn); } } }程序運行過程中,Statement會將4條SQL語句提交給數(shù)據(jù)庫一起執(zhí)行。為了驗證上述中的SQL語句是否執(zhí)行成功,進入MySQL,使用SELECT語句查看school表,SQL語句的執(zhí)行結(jié)果如下所示。
mysql>select * from school; +-------+-----------+ | id | name | +-------+-----------+ | 1 | 傳智播客 | +-------+-----------+ I row in set (0.00 sec)從上述結(jié)果可以看出,school表存在,并且向表中添加了一條數(shù)據(jù),該數(shù)據(jù)的id被成功修改成了1。