176142998

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            116 Posts :: 0 Stories :: 45 Comments :: 0 Trackbacks

          如果用Hibernate與數據庫 Microsoft SQLServer 2000組合,在取子表集合的時候會拋出異常:
          org.hibernate.exception.GenericJDBCException: could not initialize a collection:
          和異常:SQL Server 2000 Driver for JDBC ResultSet can not re-read row data for column 1
          這是因為微軟的Microsoft SQLServer驅動有以下問題:
          1、如果采用jdbc-odbc驅動,那么就必須按照查詢順序來一次讀取(不論有沒有image或text類型)

          2、如果采用微軟提供的ms sql server jdbc driver,如果查詢語句中,不存在image或text類型字段,那么可以按照無序獲取

          3、如果采用微軟提供的ms sql server jdbc driver,如果查詢語句中,存在image或text類型字段,那么就必須按照順序讀取,否則就會報告Driver]ResultSet can not re-read row data for column之類的錯誤

          4、如果想不查詢語句中有沒有image或text類型字段,都可以不按照順序獲取,或重復獲取。
          Hibernate在取子表集合時,它的不是按查詢順序來一次讀取的,所以會拋出上述異常.
          解決辦法:
          更換Microsoft SQLServer驅動,我現在用的是jtds-1.2.jar,這個驅動包大家可以到CSDN下載.
          它的連接字符串是:jdbc:jtds:sqlserver://localhost:1433;DatabaseName=數據庫名
          驅動類:net.sourceforge.jtds.jdbc.Driver,
          問題解決了. 

          posted on 2008-07-30 10:01 飛飛 閱讀(1537) 評論(0)  編輯  收藏

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


          網站導航:
           
          主站蜘蛛池模板: 珠海市| 顺平县| 汶上县| 隆昌县| 宜宾县| 遂川县| 甘德县| 阜阳市| 兴国县| 绥阳县| 那坡县| 南充市| 墨竹工卡县| 三穗县| 周至县| 绥阳县| 揭阳市| 栾川县| 华坪县| 江达县| 囊谦县| 株洲县| 明光市| 嘉定区| 黄龙县| 当阳市| 霸州市| 汉川市| 浦江县| 合江县| 泽州县| 黄冈市| 崇信县| 江源县| 贵定县| 永年县| 文水县| 安图县| 抚顺市| 含山县| 抚远县|