2011-09-12 68 views
4

目前,我們正在使用VARCHAR用於存儲文本數據在DB2然而,我們打,因爲在指定的DB2 VARCHAR長度的問題指定了VARCHAR的長度是不一樣的文本的長度爲UTF-8的數據長度這可以根據存儲的文本數據而變化。例如有些文本包含來自不同語言的字符,因爲它的一些文字與500個字符不能在VARCHAR(500),保存等DB2 VARCHAR Unicode數據存儲

現在,我們正計劃遷移到VARGRAPHIC。我需要知道使用VARGRAPHIC在DB2中存儲unicode文本數據的限制。 使用VARGRAPHIC有什麼問題嗎?

回答

1

DB2並未檢查數據實際上是雙字節的String,但它假定它必須是。通常驅動程序會爲你做適當的轉換,但你可能會遇到一些bug。但這不太可能。

如果使用聯合數據庫查詢中的Vargraphic支持可能完全失敗。總的來說,vargraphic數據類型的錯誤報告數量有點高。對其它數據類型的支持可能沒有經過很好的測試和嘗試。

VARGRAPHIC將與Unicode數據庫(即UTF-8是要求)使用大端UCS-2,這意味着雙那些列的空間要求。 Vargraphic是DB2正確的數據類型。如果你有一天從DB2遷移出來,你將不得不做額外的轉換。