国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > SQL Server > 正文

sql2005 批量更新問題的解決方法

2020-10-30 19:10:48
字體:
供稿:網(wǎng)友
首先注意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ì)對(duì)效率有影響。不建議使用。
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
我測(cè)試過了,完全沒有問題!
提供一些數(shù)據(jù)連接參數(shù)
jdbc.driverClassName:com.microsoft.sqlserver.jdbc.SQLServerDriver
jdbc.url:jdbc:sqlserver://127.0.0.1:1444;databaseName=fax;selectMethod=cursor;
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 桑日县| 偃师市| 合阳县| 尚志市| 织金县| 襄汾县| 楚雄市| 泾川县| 河源市| 嘉鱼县| 共和县| 淮阳县| 安丘市| 鸡东县| 青阳县| 定陶县| 邵阳县| 鹤岗市| 伊宁市| 砀山县| 中卫市| 崇义县| 建水县| 孟州市| 姚安县| 东光县| 濮阳县| 蚌埠市| 宜丰县| 苍南县| 横峰县| 哈巴河县| 乌拉特前旗| 富顺县| 舟曲县| 郧西县| 苍溪县| 南投市| 酒泉市| 那曲县| 读书|