解決SQL Server 2005數(shù)據(jù)庫批量更新的辦法_Mssql數(shù)據(jù)庫教程
推薦:詳細(xì)解析SQL Server安裝sp4補(bǔ)丁報(bào)錯(cuò)的方法問題:在安裝SP4補(bǔ)丁的時(shí)候,老是報(bào)驗(yàn)證密碼錯(cuò)誤。 上網(wǎng)查了一下資料,發(fā)現(xiàn)是一個(gè)小bug。 按照一下操作,安裝正常。 SQL Server補(bǔ)丁安裝常見問題 SQL Server補(bǔ)丁安裝常見問題:一、SQL Server補(bǔ)丁版本的檢查 SQL Server的補(bǔ)丁版本檢查不如Windows 補(bǔ)丁版本檢
這些天因?yàn)橛袛?shù)據(jù)割接的需求,于是有要寫關(guān)于批量更新的程序。我們的數(shù)據(jù)庫使用的是SQLSERVER2005,碰到了一些問題來分享下。
首先注意Statement 和PreparedStatement的問題
Statement sm = cn.createStatement();
sm.addBatch(sql1);
sm.addBatch(sql2);
...
sm.executeBatch()
用Statement的好處就是每次可以直接傳一個(gè)SQL語句進(jìn)去,不用管那么多�?墒窃跀�(shù)據(jù)量比較大的時(shí)候,應(yīng)該會(huì)對效率有影響。不建議使用。
PreparedStatement ps = cn.preparedStatement(sql);
{
ps.setXXX(1,xxx);
...
ps.addBatch();
}
ps.executeBatch();
PreparedStatement是會(huì)預(yù)編譯的,只要一條SQL,不斷動(dòng)態(tài)設(shè)值,然后addBatch(),在數(shù)據(jù)量大的時(shí)候比較好,非常建議使用。
還有就是JDBC的驅(qū)動(dòng)問題,很多同志可能還是在用2000的驅(qū)動(dòng)呢,沒有用批量更新的程序沒有多大問題,可是一旦用了批量更新,出現(xiàn)很多問題,
反正數(shù)據(jù)庫很卡,慢。還可以更新不了哦。
我強(qiáng)烈建議大家更新JDBC驅(qū)動(dòng)。
但是如果出現(xiàn)
SQLServerException: sp_cursoropen/sp_cursorprepare: 該語句參數(shù)只能是一個(gè)批或帶有單個(gè) SELECT 語句的存儲(chǔ)過程,且不帶 FOR BROWSE、COMPUTE BY 或變量賦值。
應(yīng)該就是JDBC的版本問題,1.0的驅(qū)動(dòng)有這個(gè)問題,好像不支持批量更新,我建議大家使用1.2
我測試過了,完全沒有問題!
提供一些數(shù)據(jù)連接參數(shù)
jdbc.driverClassName:com.microsoft.sqlserver.jdbc.SQLServerDriver
jdbc.url:jdbc:sqlserver://127.0.0.1:1444;databaseName=fax;selectMethod=cursor;
分享:關(guān)于Oracle數(shù)據(jù)庫與SQL Server數(shù)據(jù)庫鏡像的關(guān)系摘要:Oracle和微軟都是數(shù)據(jù)庫方面的大廠商,采用兩家的產(chǎn)品的企業(yè)也不少。今天這篇文章為大家對比Oracle和SQLServer的鏡像。 標(biāo)簽:Oracle SQL Server 鏡像 數(shù)據(jù)庫鏡像是將數(shù)據(jù)庫事務(wù)處理從一個(gè)數(shù)據(jù)庫移動(dòng)到不同環(huán)境中的另一個(gè)數(shù)據(jù)庫中。鏡像的拷貝是一個(gè)備
- sql 語句練習(xí)與答案
- 深入C++ string.find()函數(shù)的用法總結(jié)
- SQL Server中刪除重復(fù)數(shù)據(jù)的幾個(gè)方法
- sql刪除重復(fù)數(shù)據(jù)的詳細(xì)方法
- SQL SERVER 2000安裝教程圖文詳解
- 使用sql server management studio 2008 無法查看數(shù)據(jù)庫,提示 無法為該請求檢索數(shù)據(jù) 錯(cuò)誤916解決方法
- SQLServer日志清空語句(sql2000,sql2005,sql2008)
- Sql Server 2008完全卸載方法(其他版本類似)
- sql server 2008 不允許保存更改,您所做的更改要求刪除并重新創(chuàng)建以下表
- SQL Server 2008 清空刪除日志文件(瞬間日志變幾M)
- Win7系統(tǒng)安裝MySQL5.5.21圖解教程
- 將DataTable作為存儲(chǔ)過程參數(shù)的用法實(shí)例詳解
Mssql數(shù)據(jù)庫教程Rss訂閱編程教程搜索
Mssql數(shù)據(jù)庫教程推薦
- 解讀在SQL Server中處理空值時(shí)涉及的三個(gè)問題
- 教你2種刪除SQL SERVER數(shù)據(jù)庫日志方法
- 詳解SQL Server中數(shù)據(jù)庫快照的工作原理
- 解析SQL Server2000連接中三個(gè)最常見錯(cuò)誤
- 解析微軟SQL Server 2008如何令商業(yè)智能平民化
- 如何檢測SQL Server是否有特洛伊木馬
- 解讀SQLServer2005 XML在T-SQL中的應(yīng)用
- 深入淺出SQL教程之Group by和Having
- 讓SQL Server數(shù)據(jù)庫自動(dòng)執(zhí)行管理任務(wù)(一)
- 談在SQL server2000中導(dǎo)入.sql數(shù)據(jù)庫文件的方法
- 相關(guān)鏈接:
- 教程說明:
Mssql數(shù)據(jù)庫教程-解決SQL Server 2005數(shù)據(jù)庫批量更新的辦法
。