隨筆 - 11, 文章 - 1, 評論 - 20, 引用 - 0
          數據加載中……

          修改Tds驅動Url聲明解決兩個Sql Server問題

          問題1:JDBC Sql Server varchar的取出最大長度限制

          環境: JDBC驅動inet tds驅動(版本不明),SQLServer2K

          問題癥狀:對于數據庫聲明為varchar的長度大于256的字段,可以正常保存,但是無法取出多于256字符以后的內容

          問題2:使用Hibernate映射時0長度字符串保存后,取出多加了一個空格

          環境:inet tds驅動Hibernate2.1.8,SQL Server2K

          問題癥狀:保存0長度字符串后,取出增加了多余的空格。

          以上兩個問題都是因為沒有使用最新的通訊協議引起的,修改URL聲明方式如下:

          jdbc:inetdae7:127.0.0.1:1433?database=xxx

          問題解決,收工。

          ps:發現協議inetdae時,數據庫字段為Null時,Hibernate取出聲明為基本類型(例如boolean)的對象屬性并不會報錯,實際上在其他數據庫如Oracle和新協議上是會報錯的。為了避免此類問題出現,最好還是嚴格遵守:Hibernate聲明對象的基本類型屬性,一定不能在數據庫端置為空值。

          ps2:在解決以上問題中發現,Oracle居然對傳人0長度字符串,會轉為空值,不知道是為了節省空間還是別的什么理由。-_-!!!

          全文完

          posted on 2006-02-07 08:49 wolfsquare 閱讀(563) 評論(0)  編輯  收藏 所屬分類: 企業應用其他技術

          主站蜘蛛池模板: 绥江县| 甘泉县| 亚东县| 西平县| 周口市| 西畴县| 隆林| 德州市| 毕节市| 临海市| 喜德县| 东山县| 定边县| 天气| 伊春市| 枞阳县| 鄢陵县| 湘潭县| 抚顺市| 望江县| 怀宁县| 扬中市| 阳城县| 丰宁| 碌曲县| 江达县| 灵台县| 夏津县| 林西县| 定西市| 六安市| 安国市| 惠来县| 宝清县| 临沧市| 民乐县| 靖州| 常山县| 内乡县| 白玉县| 万山特区|