<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    feng

    飄逸~~~~~life

    SQL Server 2005 批量更新解決辦法

    這些天因為有數據割接的需求,于是有要寫關于批量更新的程序。我們的數據庫使用的是SQLSERVER2005,碰到了一些問題來分享下。
    首先注意Statement PreparedStatement的問題
    Statement sm = cn.createStatement();
    sm.addBatch(sql1);
    sm.addBatch(sql2);
    ...
    sm.executeBatch()

     用Statement的好處就是每次可以直接傳一個SQL語句進去,不用管那么多。可是在數據量比較大的時候,應該會對效率有影響。不建議使用。
    PreparedStatement ps = cn.preparedStatement(sql);
    {
     ps.setXXX(1,xxx);
     ...
     ps.addBatch();
    }
    ps.executeBatch();
    PreparedStatement是會預編譯的,只要一條SQL,不斷動態設值,然后addBatch(),在數據量大的時候比較好,非常建議使用。
    還有就是JDBC的驅動問題,很多同志可能還是在用2000的驅動呢,沒有用批量更新的程序沒有多大問題,可是一旦用了批量更新,出現很多問題,
    反正數據庫很卡,慢。還可以更新不了哦。
    我強烈建議大家更新JDBC驅動。
    但是如果出現
    SQLServerException: sp_cursoropen/sp_cursorprepare: 該語句參數只能是一個批或帶有單個 SELECT 語句的存儲過程,且不帶 FOR BROWSE、COMPUTE BY 或變量賦值。
    應該就是JDBC的版本問題,1.0的驅動有這個問題,好像不支持批量更新,我建議大家使用1.2
    我測試過了,完全沒有問題!
    提供一些數據連接參數
    jdbc.driverClassName:com.microsoft.sqlserver.jdbc.SQLServerDriver
    jdbc.url:jdbc:sqlserver://127.0.0.1:1444;databaseName=fax;selectMethod=cursor;

    我上傳了1.2的驅動
    點這里直接下載

    posted on 2009-04-09 11:09 feng 閱讀(1824) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲va无码va在线va天堂| 国产无遮挡又黄又爽免费视频 | 福利免费观看午夜体检区| 久久伊人久久亚洲综合| 成在线人视频免费视频 | 一级做a爰片久久毛片免费看 | 亚洲精选在线观看| 免费看搞黄视频网站| 24小时日本在线www免费的| 亚洲国产品综合人成综合网站| 久久久久久国产精品免费无码| 亚洲精品天堂成人片?V在线播放| 久久精品国产亚洲香蕉| 久久久久久AV无码免费网站下载 | 亚洲国产精品国产自在在线| 亚洲一区二区三区首页| 美女被爆羞羞网站在免费观看| 67pao强力打造高清免费| 亚洲成人午夜电影| a国产成人免费视频| 国产免费黄色大片| 67194在线午夜亚洲| 成年轻人网站色免费看| 黄页网址大全免费观看12网站| 亚洲人成人网站在线观看| 久久免费线看线看| 亚洲国产精品成人精品软件| 中文字幕av无码无卡免费| 精品亚洲视频在线| 暖暖日本免费在线视频| 一级毛片免费播放试看60分钟| 亚洲成AV人片在线观看| 两个人看www免费视频| 久久久久噜噜噜亚洲熟女综合| 成人爽a毛片免费| 精品亚洲国产成人| 亚洲综合精品网站| 国产日韩AV免费无码一区二区三区| 亚洲国产精品一区二区久久hs| 两个人的视频高清在线观看免费 | 黄色片在线免费观看|