[英]DB2 Code conversion from Unicode to ISO8859-2 and back
從包含拉脫維亞大寫字母(Rīga)的XML(UTF8編碼)保存字符串時。 里加將此I與Macron( Unicode )一起提供給DB2。
數據庫代碼頁不是Unicode,但不幸的是ISO8859-2。 發生轉換,並且我用X'1A代替了這個特殊字符(( 在此解釋IBM docs ))
同樣,當我使用相同的列重現原始XML時,我的驗證因以下原因而失敗:
An invalid XML character (Unicode: 0x1a) was found in the element content of the document.
他們為什么選擇無效的XML字符作為替換,以及執行此操作的首選方式是什么?
我們使用Java來進行XML輸入和輸出,並且不需要使用Macron來保留I,某種替換字符是可以的,不會與XML混淆。 過濾數據庫代碼頁中無法表示的所有字符不是一個好主意嗎?
您是否嘗試過將列轉換回unicode?
CAST(column AS VARCHAR(255) CCSID UNICODE )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.