業務場景:當需要向資料庫傳送一批sql語句執行時,應避免向資料庫一條條的傳送執行,而應採用jdbc的批處理機制,以提公升執行效率。
實現批處理有兩種方式:
第一種方式:使用 statement.addbatch(sql)
connection conn = jdbcutil.getconnection();
string sql1 = "insert into user(name,password,email,birthday) values('kkk','123','[email protected]','1978-08-08')";
string sql2 = "update user set password='123456' where id=3";
statement st = conn.createstatement();
st.addbatch(sql1); //把sql語句加入到批命令中
st.addbatch(sql2); //把sql語句加入到批命令中
st.executebatch();
採用statement.addbatch(sql)方式實現批處理:
•優點:可以向資料庫傳送多條不同的sql語句。
•缺點:
•sql語句沒有預編譯。
•當向資料庫傳送多條語句相同,但僅引數不同的sql語句時,需重複寫上很多條sql語句。例如:
insert into user(name,password) values(『aa』,』111』);
insert into user(name,password) values(『bb』,』222』);
insert into user(name,password) values(『cc』,』333』);
insert into user(name,password) values(『dd』,』444』);
第二種方式:
•preparedstatement.addbatch
()
connection conn = jdbcutil.getconnection();
string sql = "insert into user(name,password,email,birthday) values(?,?,?,?)";
preparestatement st = conn.preparestatement(sql);
for(int i=0;i<50000;i++)
}st.executebatch();
採用preparedstatement.addbatch
()實現批處理
•優點:傳送的是預編譯後的sql語句,執行效率高。
•缺點:只能應用在sql語句相同,但引數不同的批處理中。因此此種形式的批處理經常用於在同乙個表中批量插入資料,或批量更新表的資料。
使用JDBC進行批處理
當我們需要向資料庫傳送一批sql語句執行時,應避免向資料庫一條條的傳送執行,而應採用jdbc的批處理機制,以提公升執行效率 有兩種方式實現批處理 1.使用statement statement.addbatch sql 方法 新增sql語句 executebatch 方法 執行批處理命令 clear...
使用JDBC進行批處理
當需要向資料庫傳送一批sql語句執行時,應避免向資料庫一條條的傳送執行,而應該採用jdbc的批處理機制,以提公升執行效率。方式一 statement.addbatch sql 可以傳送不同的sql語句 執行sql語句的方法 executebatch 清除批處理命令的方法 clearbatch con...
使用JDBC進行批處理
l業務場景 當需要向資料庫傳送一批sql語句執行時,應避免向資料庫一條條的傳送執行,而應採用jdbc的批處理機制,以提公升執行效率。l實現批處理有兩種方式,第一種方式 statement.addbatch sql l執行批處理sql語句 executebatch 方法 執行批處理命令 clearba...