簡體   English   中英

DB2代碼從Unicode轉換為ISO8859-2並返回

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM