DB2 VARCHAR unicode数据存储

时间:2011-09-12 08:34:27

标签: unicode db2 varchar sqldatatypes

我们当前正在使用VARCHAR在DB2中存储文本数据,但是我们遇到的问题是指定的VARCHAR长度与文本长度不同,因为在DB2 VARCHAR中指定的长度是UTF-8数据长度,它可以根据不同而变化存储的文本数据。例如,某些文本包含来自不同语言的字符,因此一些500字符的文本无法保存在VARCHAR(500)等中。

现在我们计划迁移到VARGRAPHIC。我需要知道使用VARGRAPHIC在DB2中存储unicode文本数据有什么限制。 使用VARGRAPHIC有什么问题吗?

1 个答案:

答案 0 :(得分:2)

DB2没有检查数据实际上是双字节字符串,但它假定它必须是。通常司机会为你做适当的转换,但有一天你可能碰到一些错误。但这不太可能。

如果使用联合数据库,查询中的Vargraphic支持可能会完全失败。总体而言,vargraphic数据类型的错误报告数量有些高。对它的支持可能不像其他数据类型那样经过充分测试和尝试。

Vargraphic将使用unicode数据库(即UTF-8是必需的)使用big-endian UCS-2,这意味着您对这些列的空间要求加倍。 Vargraphic是DB2专有数据类型。如果有一天迁移DB2,则必须进行额外的转换。