我使用附有IBM DB2数据库的SAP系统。我在SAP系统中创建了一个透明表,然后检查了它在数据库级别上的样子。事实证明,字符字段(CHAR
,DATS
,CUKY
,NUMC
)比SE11
中指定的字符长三倍。例如,CLIENT
类型的MANDT
字段的类型为VARCHAR(9)
。
我可以理解长度乘以2,因为SAP是一个Unicode系统。但乘3?有人能向我解释一下吗?
答案 0 :(得分:2)
此效果不依赖于所使用的DBMS(我在基于Oracle的系统上看到了相同的效果)。它确实是一个unicode / NUC问题:在NUC系统上,客户端字段是VARCHAR2(3)
,在其他相同软件组件的unicode系统上,它是VARCHAR2(9)
。我只能猜测这是由于使用了一些CESU-8变体。