在實際的專案開發中,有時候需要向資料庫傳送一批sql語句執行,這時應避免向資料庫一條條的傳送執行,而應採用jdbc的批處理機制,以提公升執行效率。
jdbc實現批處理有兩種方式:statement和preparedstatement
jdbc實現批處理有兩種方式:statement和preparedstatement
1、使用statement物件新增要批量執行sql語句,如下:
create table `testbatch` (`id`
int(11) not null,
`name` varchar(20) default null,
primary key (`id`)
) engine=innodb default charset=utf8
2.測試**
publicclass
jdbcbatch
catch
(exception e)
finally
}}
3.採用statement.addbatch(sql)方式實現批處理的優缺點
採用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');
1.使用preparedstatement完成批處理範例,測試**
publicclass
jdbcbatchpreparestatement
st.executebatch();
st.clearbatch();
}catch
(exception e)
finally
long endtime =system.currenttimemillis();
}}
2.採用preparedstatement.addbatch()方式實現批處理的優缺點
採用preparedstatement.addbatch()實現批處理
優點:傳送的是預編譯後的sql語句,執行效率高。
缺點:只能應用在sql語句相同,但引數不同的批處理中。因此此種形式的批處理經常用於在同乙個表中批量插入資料,或批量更新表的資料。
使用JDBC進行批處理
業務場景 當需要向資料庫傳送一批sql語句執行時,應避免向資料庫一條條的傳送執行,而應採用jdbc的批處理機制,以提公升執行效率。實現批處理有兩種方式 第一種方式 使用 statement.addbatch sql connection conn jdbcutil.getconnection str...
使用JDBC進行批處理
當我們需要向資料庫傳送一批sql語句執行時,應避免向資料庫一條條的傳送執行,而應採用jdbc的批處理機制,以提公升執行效率 有兩種方式實現批處理 1.使用statement statement.addbatch sql 方法 新增sql語句 executebatch 方法 執行批處理命令 clear...
使用JDBC進行批處理
當需要向資料庫傳送一批sql語句執行時,應避免向資料庫一條條的傳送執行,而應該採用jdbc的批處理機制,以提公升執行效率。方式一 statement.addbatch sql 可以傳送不同的sql語句 執行sql語句的方法 executebatch 清除批處理命令的方法 clearbatch con...