亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? jdbc2.0.frame6.html

?? JDBC入門中文文檔
?? HTML
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>

<head>
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=gb2312">
<title></title>
</head>

<body bgcolor="#ffffff">

<table width="100%">
  <tr>
    <td><font size="-1"><a href="jdbc2.0.frame.html">目錄</a> | <a
    href="jdbc2.0.frame5.html">上一頁</a> | <a href="jdbc2.0.frame7.html">下一頁</a> </font></td>
    <td align="right"><i>JDBC<sup><font size="-2">TM</font></sup> 指南:入門</i></td>
  </tr>
</table>

<hr>

<p><br>
<a name="287821"></a> </p>

<h2>6 批處理更新</h2>

<p>批處理更新功能可以一次向數據庫提交多個更新操作,要求數據庫進行處理。一起提交多個更新(而非一個一個單獨地提交更新)在某些情況下將大大提高性能。可以利用 
<code>Statement</code>、<code>PreparedStatement</code> 和 <code>CallableStatement </code>對象來提交批處理更新。</p>

<p><a name="283240"></a> </p>

<h3>6.1 批處理更新的使用</h3>

<h4>6.1.1 語句</h4>

<p>批處理更新功能允許 <code>Statement</code> 
對象將一組相異的更新命令作為一個單位或批處理提交給基本 DBMS。下例中,在假想的公司數據庫中插入新雇員所需的所有更新操作是作為單個批處理提交的。</p>

<p><a name="283316"></a> </p>

<blockquote>
  <pre>// 關閉自動執行
con.setAutoCommit(false);

Statement stmt = con.createStatement();

stmt.addBatch(&quot;INSERT INTO employees VALUES (1000, 'Joe Jones')&quot;);
stmt.addBatch(&quot;INSERT INTO departments VALUES (260, 'Shoe')&quot;);
stmt.addBatch(&quot;INSERT INTO emp_dept VALUES (1000, 260)&quot;);

// 提交一批要執行的更新命令
int[] updateCounts = stmt.executeBatch();


</pre>
</blockquote>

<p><a name="283392"></a></p>

<p>本例中禁用了自動執行模式,從而在調用 <code>Statement.executeBatch()</code> 
時可以防止 JDBC 
執行事務處理。禁用自動執行使得應用程序能夠在發生錯誤及批處理中的某些命令不能執行時決定是否執行事務處理。因此,當進行批處理更新時,通常應該關閉自動執行。</p>

<p>在 JDBC 2.0 中,<code>Statement</code> 
對象能夠記住可以一起提交執行的命令列表。創建語句時,與它關聯的命令列表為空。<code>Statement.addBatch() 
</code>方法為調用語句的命令列表添加一個元素。如果批處理中包含有試圖返回結果集的命令,則當調用 
<code>Statement. executeBatch()</code> 時,將拋出 <code>SQLException</code>。只有 
DDL 和 DML 
命令(它們只返回簡單的更新計數)才能作為批處理的一部分來執行。如果應用程序決定不提交已經為某語句構造的命令批處理,則可以調用方法 
<code>Statement.clearBatch()</code>(以上沒有顯示)來重新設置批處理。</p>

<p><code>Statement.executeBatch()</code> 方法將把命令批處理提交給基本 DBMS 
來執行。命令的執行將依照在批處理中的添加順序來進行。<code>ExecuteBatch() 
</code>為執行的命令返回更新計數數組。數組中對應于批處理中的每個命令都包含了一項,而數組中各元素依據命令的執行順序(這還是和命令的最初添加順序相同)來排序。調用 
<code>executeBatch()</code> 將關閉發出調用的 <code>Statement</code> 
對象的當前結果集(如果有一個結果集是打開的)。 <code>executeBatch()</code> 
返回后,將重新將語句的內部批處理命令列表設置為空。</p>

<p><a name="284570"></a>如果批處理中的某個命令無法正確執行,則 <code>ExecuteBatch()</code> 
將拋出 <code>BatchUpdateException</code>。可以調用 <code>BatchUpdateException.getUpdateCounts()</code> 
方法來為批處理中成功執行的命令返回更新計數的整型數組。因為當有第一個命令返回錯誤時,<code>Statement.executeBatch()</code> 
就中止,而且這些命令是依據它們在批處理中的添加順序而執行的。所以如果 
<code>BatchUpdateException.getUpdateCounts() </code>所返回的數組包含 N 
個元素,這就意味著在調用 <code>executeBatch()</code> 時批處理中的前 N 
個命令被成功執行。</p>

<p><a name="301463"></a> </p>

<h4>6.1.2 預先準備好的語句</h4>

<p>批處理更新功能與預先準備好的語句一起配合使用時可將多個輸入參數值集合與一個 
<code>PreparedStatement </code>對象相關聯。隨后,就能將參數值和關聯的參數化更新命令作為單一單元送交給基本 
DBMS 引擎來執行。</p>

<p><a name="283428"></a>下例將兩條新增雇員記錄作為一次批處理插入到數據庫中。本例使用 
<code>PreparedStatement.setXXX()</code> 
方法來創建每個參數集合(每個雇員對應一個),而使用 <code>PreparedStatement.addBatch()</code> 
方法將一組參數添加到當前批處理中。</p>

<p><a name="283503"></a> </p>

<blockquote>
  <pre>// 關閉自動執行
con.setAutoCommit(false);

PreparedStatement stmt = con.prepareStatement(
	&quot;INSERT INTO employees VALUES (?, ?)&quot;);

stmt.setInt(1, 2000);
stmt.setString(2, &quot;Kelly Kaufmann&quot;);
stmt.addBatch();

stmt.setInt(1, 3000);
stmt.setString(2, &quot;Bill Barnes&quot;);
stmt.addBatch();

// 提交要執行的批處理
int[] updateCounts = stmt.executeBatch();


</pre>
</blockquote>

<p><a name="283494"></a></p>

<p>最后,它將調用 <code>PreparedStatement.executeBatch()</code> 來將更新傳給 
DBMS。對于 <code>PreparedStatement </code>對象,其錯誤處理類似于對 <code>Statement</code> 
對象的錯誤處理。</p>

<p><a name="283558"></a> </p>

<h4>6.1.3 可調用語句</h4>

<p>批處理更新功能使用 <code>CallableStatement</code> 
對象進行工作的方式與使用 <code>PreparedStatement</code> 
對象進行工作的方式相同。多個輸入參數值的集合可以與可調用語句相關聯,然后一起送交給 
DBMS。批處理更新功能與可調用語句一起使用所調用的存儲過程必須返回更新計數,而且可以不必有輸出或輸入輸出參數。如果違反這個限制條件,則 
<code>CallableStatement.executeB atch()</code> 方法會拋出異常。</p>

<p><br>
</p>

<hr>
<font size="-1"><a href="jdbc2.0.frame.html">

<p>目錄</a> | <a href="jdbc2.0.frame5.html">上一頁</a> | <a
href="jdbc2.0.frame7.html">下一頁</a> </font></p>

<hr>

<address>
  <a href="mailto:jdbc@eng.sun.com">jdbc@eng.sun.com</a> 或 <a
  href="mailto:jdbc-business@eng.sun.com">jdbc-business@eng.sun.com</a> 
</address>
<a href="../../../relnotes/SMICopyright.html"><font size="-1"><i>

<p>版權所有 &copy; 1996, 1997 Sun Microsystems, Inc. 保留所有權利</i></font>。</a><!-- HTML generated by Suzette Pelouch on June 09, 1998 --> 
</p>
</body>
</html>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
gogogo免费视频观看亚洲一| 精品成人在线观看| 亚洲久草在线视频| 一本大道av一区二区在线播放| 亚洲女同女同女同女同女同69| 色噜噜偷拍精品综合在线| 亚洲伦理在线免费看| 欧美色窝79yyyycom| 亚洲成av人片在www色猫咪| 日韩欧美高清在线| 欧美精品久久久久久久久老牛影院| 欧美成人性战久久| 国产精品一区在线观看你懂的| 国产日产亚洲精品系列| 一本色道久久综合亚洲91| 亚洲国产精品精华液网站| 日韩午夜激情视频| 国产在线播放一区| 一区二区三区蜜桃| 精品三级在线看| 91香蕉国产在线观看软件| 一区二区在线观看视频在线观看| 91麻豆精品国产91久久久久久| 国产精品自拍av| 中文字幕字幕中文在线中不卡视频| 欧美喷潮久久久xxxxx| 麻豆视频观看网址久久| 亚洲少妇30p| 日韩女同互慰一区二区| 91污片在线观看| 蜜臀av一区二区| 亚洲欧美电影院| 精品国产一区二区三区忘忧草| 成人av电影免费在线播放| 日韩高清在线一区| 亚洲素人一区二区| www成人在线观看| 欧美三日本三级三级在线播放| 国产经典欧美精品| 日本中文一区二区三区| 亚洲免费av网站| 日本一区二区视频在线| 日韩亚洲欧美在线| 欧美视频完全免费看| 成人免费观看视频| 国产在线播放一区| 青青草国产精品97视觉盛宴| 亚洲图片欧美色图| 亚洲欧美精品午睡沙发| 国产日产精品1区| 欧美大黄免费观看| 欧美日本在线播放| 欧美亚一区二区| 91色在线porny| 成人看片黄a免费看在线| 国内精品久久久久影院薰衣草 | 91亚洲国产成人精品一区二区三| 久久精品国内一区二区三区| 午夜精品久久久久| 一区二区三区.www| 亚洲人成亚洲人成在线观看图片| 国产亚洲精品久| 日韩区在线观看| 欧美久久久久中文字幕| 欧美色图在线观看| 在线观看视频91| 在线免费视频一区二区| 91麻豆免费看片| 91浏览器入口在线观看| 91蜜桃在线观看| 91在线观看美女| 色婷婷香蕉在线一区二区| 99久久久久久| 制服.丝袜.亚洲.中文.综合| 欧美色图激情小说| 欧美性视频一区二区三区| 91原创在线视频| 99麻豆久久久国产精品免费 | 欧美日韩一区二区在线观看| 久久麻豆一区二区| 99久久99久久久精品齐齐| 天天综合色天天综合色h| 国产人伦精品一区二区| 欧美成人aa大片| 欧美性猛片aaaaaaa做受| 国产成人精品www牛牛影视| 免费成人你懂的| 婷婷中文字幕一区三区| 亚洲另类在线视频| 亚洲精品国产视频| 日韩伦理免费电影| 久久精品一区蜜桃臀影院| 欧美一卡二卡三卡| 精品国产一区二区三区久久影院 | 日韩成人dvd| 日韩av一区二区三区| 精油按摩中文字幕久久| 一本久久a久久免费精品不卡| 91精品婷婷国产综合久久性色| 欧美一区二区三区四区在线观看| 国产成a人亚洲| 美国av一区二区| 国产另类ts人妖一区二区| 成人app在线| 国产精品高潮呻吟| 欧洲精品一区二区| 麻豆国产欧美一区二区三区| 国产在线视频一区二区| 色综合夜色一区| 日韩欧美在线影院| 国产精品国产精品国产专区不蜜| 夜夜爽夜夜爽精品视频| 久久99国产乱子伦精品免费| 成人免费毛片嘿嘿连载视频| 欧美群妇大交群中文字幕| 欧美亚洲禁片免费| 欧美日韩国产综合视频在线观看| 精品视频资源站| 欧美精品久久久久久久多人混战| 国产无人区一区二区三区| 精品国产一区二区三区久久久蜜月 | 成人午夜免费av| 亚洲精品精品亚洲| 久久亚洲一区二区三区明星换脸 | 午夜精品久久久久久久久久久| 欧美熟乱第一页| 国产在线看一区| 亚洲乱码国产乱码精品精98午夜| 欧美精品国产精品| 成人免费视频视频在线观看免费| 亚洲精品国产精华液| 日韩激情一二三区| 亚洲人成网站在线| 久久综合九色综合97_久久久| 成人妖精视频yjsp地址| 蜜臀国产一区二区三区在线播放 | 婷婷开心激情综合| 中文字幕一区二| 欧美mv日韩mv| 99久久国产综合精品色伊| 欧美不卡一二三| 热久久免费视频| 欧美日韩一区视频| 亚洲制服丝袜av| 91黄色激情网站| 久久不见久久见中文字幕免费| 久久久亚洲综合| 久久久久久99久久久精品网站| 三级在线观看一区二区| 色999日韩国产欧美一区二区| 国产精品123| 99这里只有精品| 国产亚洲一区二区在线观看| 看国产成人h片视频| 欧美日韩亚洲另类| 一卡二卡三卡日韩欧美| 97精品久久久久中文字幕| 国产精品素人视频| 懂色av噜噜一区二区三区av| 久久久一区二区| 国产精品456| 久久蜜桃av一区精品变态类天堂 | 欧美精品一区二区在线观看| 麻豆高清免费国产一区| 日韩一级在线观看| 日韩中文欧美在线| 欧美一级淫片007| 老汉av免费一区二区三区| 欧美一区二区三区色| 日本大胆欧美人术艺术动态| 日韩免费看的电影| 国产乱码精品一区二区三区忘忧草 | 欧美调教femdomvk| 亚洲国产你懂的| 在线成人免费视频| 免费人成黄页网站在线一区二区| 日韩欧美综合在线| 国产乱码精品一区二区三区忘忧草| 国产亚洲精品7777| 成人黄色网址在线观看| 最好看的中文字幕久久| 色88888久久久久久影院野外 | 看电视剧不卡顿的网站| 欧美mv和日韩mv的网站| 国产盗摄视频一区二区三区| 日韩理论在线观看| 欧美三级三级三级| 国产欧美一区二区精品性色超碰| 成人短视频下载| 午夜不卡在线视频| 久久婷婷成人综合色| 99精品视频中文字幕| 亚洲成精国产精品女| 精品国产凹凸成av人网站| 成人av在线一区二区三区| 亚洲一区二区五区| 精品国产一区二区三区久久久蜜月 | 色先锋aa成人| 捆绑变态av一区二区三区| 亚洲欧洲成人av每日更新|