版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
浙江經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院JDBCJava語(yǔ)言程序設(shè)計(jì)Unit9主講王昌建9.5.1分頁(yè)查詢9.5.3更新替代刪除9.5.4批量處理9.5JDBC常用技巧9.5.2多條件按需查詢9.5.5事務(wù)管理9.5.4批量處理
批處理機(jī)制我們學(xué)習(xí)了數(shù)據(jù)庫(kù)的查詢、插入、更新和刪除等操作,大家可以發(fā)現(xiàn)每次數(shù)據(jù)庫(kù)連接后都是執(zhí)行了一條SQL語(yǔ)句,當(dāng)需要向數(shù)據(jù)庫(kù)發(fā)送一批SQL語(yǔ)句執(zhí)行時(shí),應(yīng)避免向數(shù)據(jù)庫(kù)一條條地發(fā)送執(zhí)行,而應(yīng)采用JDBC提供的批處理機(jī)制來(lái)提高執(zhí)行效率。
批處理實(shí)現(xiàn)方式實(shí)現(xiàn)批處理有兩種方式:使用Statement使用PreparedStatement。9.5.4批量處理1使用Statement實(shí)現(xiàn)Statementstmt=null;Connectionconn=null;try{…./*略*/Stringsql1="insertintoemp(name,password,email,birthday)values('zhang','123','zhang@163.com','1998-08-08')";Stringsql2="updateempsetpassword='123456'wherename='li'";stmt=conn.createStatement();stmt.addBatch(sql1);//把SQL語(yǔ)句加入到批處理命令中stmt.addBatch(sql2);//把SQL語(yǔ)句加入到批處理命令中stmt.executeBatch();//執(zhí)行批處理命令}finally{//關(guān)閉執(zhí)行語(yǔ)句對(duì)象和連接對(duì)象}Statement接口中有一個(gè)addBatch()方法,可以將多條SQL語(yǔ)句添加到Statement對(duì)象中,之后調(diào)用executeBatch()方法來(lái)執(zhí)行這些SQL語(yǔ)句。9.5.4批量處理1使用Statement實(shí)現(xiàn)優(yōu)點(diǎn)缺點(diǎn)采用Statement.addBatch(sql)方式實(shí)現(xiàn)批處理具有可以向數(shù)據(jù)庫(kù)發(fā)送多條不同類(lèi)型的SQL語(yǔ)句的優(yōu)點(diǎn)。由于Statement語(yǔ)句沒(méi)有預(yù)編譯,當(dāng)向數(shù)據(jù)庫(kù)發(fā)送多條語(yǔ)句相同但僅參數(shù)不同的SQL語(yǔ)句時(shí),需重復(fù)寫(xiě)很多條SQL語(yǔ)句,這是它的缺點(diǎn)。例如:insertintouser(name,password)values('aa','111');insertintouser(name,password)values('bb','222');insertintouser(name,password)values('cc','333’);insertintouser(name,password)values('dd','444');}9.5.4批量處理2使用PreparedStatement實(shí)現(xiàn)pstmt=conn.prepareStatement(sql);for(inti=0;i<50123;i++){pstmt.setString(1,"aaa"+i);pstmt.setString(2,"123"+i);pstmt.setString(3,"aaa"+i+"@163.com");pstmt.setDate(4,newDate(1998,10,10));pstmt.addBatch();if(i%1000==0){//判斷每100條執(zhí)行一次批處理pstmt.executeBatch();//執(zhí)行批處理pstmt.clearBatch();//清空批處理語(yǔ)句}}//結(jié)束for循環(huán)pstmt.executeBatch();//最后一次執(zhí)行批處理,確保全部語(yǔ)句被執(zhí)行PreparedStatement接口實(shí)現(xiàn)批處理同樣是調(diào)用addBatch()來(lái)添加批處理語(yǔ)句,但是需要添加預(yù)處理的SQL語(yǔ)句。9.5.4批量處理2使用PreparedStatement實(shí)現(xiàn)優(yōu)點(diǎn)缺點(diǎn)采用PreparedStatement.addBatch()實(shí)現(xiàn)批處理的優(yōu)點(diǎn)是發(fā)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 體溫監(jiān)測(cè)話術(shù)
- AI靈犀:心有靈犀的智能交互
- 中國(guó)科學(xué)院西北高原生物研究所2026年博士后招聘?jìng)淇碱}庫(kù)(青海)及完整答案詳解1套
- 2026重慶市南岸區(qū)人民政府彈子石街道辦事處公益性崗位招聘5人備考題庫(kù)及完整答案詳解一套
- 分組教學(xué)介紹
- 長(zhǎng)春寶寶精細(xì)動(dòng)作訓(xùn)練
- 完善市場(chǎng)交易秩序承諾書(shū)7篇范文
- 保障勞動(dòng)者權(quán)益構(gòu)建和諧用工承諾書(shū)范文6篇
- 長(zhǎng)春寶寶語(yǔ)言能力培養(yǎng)
- 眼科重癥監(jiān)護(hù)室工作制度及技術(shù)操作規(guī)范
- 基于SOLO分類(lèi)理論剖析初中生數(shù)學(xué)開(kāi)放題解決水平:現(xiàn)狀差異與提升策略
- 2025至2030全球及中國(guó)用戶研究軟件行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢(shì)及投資規(guī)劃深度研究報(bào)告
- 砌筑施工安全教育培訓(xùn)課件
- GB/T 7122-2025高強(qiáng)度膠粘劑剝離強(qiáng)度的測(cè)定浮輥法
- 海洋水文氣象觀測(cè)員測(cè)試考核試卷及答案
- 人教版七年級(jí)數(shù)學(xué)上冊(cè) 第四章《整式的加減》單元測(cè)試卷(含答案)
- 五常市水稻種植技術(shù)規(guī)程
- 自來(lái)水廠理論知識(shí)培訓(xùn)課件
- 車(chē)間主管年終總結(jié)和明年方案
- 2025年公務(wù)員類(lèi)社區(qū)禁毒專(zhuān)職員參考題庫(kù)含答案解析
- 酒精戒斷的醫(yī)學(xué)解析
評(píng)論
0/150
提交評(píng)論