2
當我嘗試在DB2中定義爲CHAR(15)FOR BIT DATA的列中插入字符串值時,我注意到它被轉換爲其他格式,可能是十六進制。在DB2的FOR BIT DATA列中插入字符串
在檢索數據,我得到一個字節數組,並試圖將其轉換回爲ASCII,使用System.Text.Encoding.ASCII.GetString,我回來的一些垃圾字符的字符串。
任何人都遇到過這個問題? 任何分辨率?
在此先感謝。
當我嘗試在DB2中定義爲CHAR(15)FOR BIT DATA的列中插入字符串值時,我注意到它被轉換爲其他格式,可能是十六進制。在DB2的FOR BIT DATA列中插入字符串
在檢索數據,我得到一個字節數組,並試圖將其轉換回爲ASCII,使用System.Text.Encoding.ASCII.GetString,我回來的一些垃圾字符的字符串。
任何人都遇到過這個問題? 任何分辨率?
在此先感謝。
對於位數據可防止客戶端和服務器之間的代碼頁轉換。這通常用於插入二進制數據,而不是字符串。
請看一看這個論壇,許多情況下,提出並解決了:http://www.dbforums.com/db2/1663992-bit-data.html
你可能最終作出強制轉換爲數據庫頁面(這取決於你的平臺)
CAST(c1 AS CHAR(n) FOR SBCS DATA)
CAST (<forbitdataexpression> AS [VARCHAR|CHAR][(<n>)] FOR [SBCS|DBCS] DATA)
參考