要正确处理不同平台上的双向数据,下列 BiDi 属性是必需的:
- 文本类型(LOGICAL 与 VISUAL) - 整形(SHAPED 与 UNSHAPED) - 方向(RIGHT-TO-LEFT 与 LEFT-TO-RIGHT) - 数字形状(ARABIC 与 HINDI) - 对称交换(YES 或 NO)
因为不同平台上的缺省值不一样, 因此在将 DB2 数据从一个平台发送到另一个平台时会出现问题。例如,Windows 平台使用 LOGICAL UNSHAPED 数据, 而 OS/390 上的数据通常使用 SHAPED VISUAL 格式。因而,若对这些属性没有任何支持, 则从 DB2 通用数据库 OS/390 版发送至 Windows 32 位操作系统工作站上的 DB2 UDB 的数据将不能正确显示。
下列双向“编码字符集标识符”(CCSID) 已定义并在 DB2 UDB 中实施:
CCSID - 代码 - 字符串 - 页 - 类型 -------+--------+---------- 00420 420 4 00424 424 4 08612 420 5 08616 424 6 12708 420 7 X'3F00' 856 4 X'3F01' 862 4 X'3F02' 916 4 X'3F03' 424 5 X'3F04' 856 5 X'3F05' 862 5 X'3F06' 916 5 X'3F07' 1255 5 X'3F08' 1046 5 X'3F09' 864 5 X'3F0A' 1089 5 X'3F0B' 1256 5 X'3F0C' 856 6 X'3F0D' 862 6 X'3F0E' 916 6 X'3F0F' 1255 6 X'3F10' 420 6 X'3F11' 864 6 X'3F12' 1046 6 X'3F13' 1089 6 X'3F14' 1256 6 X'3F15' 424 8 X'3F16' 856 8 X'3F17' 862 8 X'3F18' 916 8 X'3F19' 420 8 X'3F1A' 420 9 X'3F1B' 424 10 X'3F1C' 856 10 X'3F1D' 862 10 X'3F1E' 916 10 X'3F1F' 1255 10 X'3F20' 424 11 X'3F21' 856 11 X'3F22' 862 11 X'3F23' 916 11 X'3F24' 1255 11
其中“CDRA 字符串类型”定义为:
字符串 - 文本 - 数字 - 方向 - 整形 - 对称 类型 - 类型 - 形状 - - - 交换 ---------+-------+------------+-------------+-----------+------------- 4 Visual Arabic LTR 已整形 OFF 5 Implicit Arabic LTR 未整形 ON 6 Implicit Arabic RTL 未整形 ON 7(*) Visual Arabic Contextual(*) 未整形 Lig OFF 8 Visual Arabic RTL 已整形 OFF 9 Visual Passthru RTL 已整形 ON 10 Implicit Contextual-L ON 11 Implicit Contextual-R ON
注意: | 当第一个字母字符为拉丁字符时,字段方向为从左到右 (LTR), 当第一个字母字符为双向 (RTL) 字符时,字段方向为从右到左 (RTL)。字符未整形, 但保留 LamAlef 连字,而没有将其分开。 |