我们在 IBM DB2 9.7 LUW 数据库中使用 UTF-8 编码。尽管我做了很多搜索,但我找不到这个问题的明确答案。如果我将表列定义为 VARCHAR(100),它是否意味着 100 个字符或 100 个字节?
最佳答案
根据online IBM docs ,以字节为单位:
VARCHAR(integer), or CHARACTER VARYING(integer), or CHAR VARYING(integer)
For a varying-length character string of maximum length integer bytes, which may range from 1 to 32,672.
有关 this page 的更多信息哪里可以看到
SELECT CHARACTER_LENGTH (NAME, OCTETS) FROM T1 WHERE NAME = 'Jürgen'
给你7,因为ü
被编码为x'c3bc'
。
关于db2 - IBM DB2 9.7 VARCHAR([N]),[N]代表UTF-8中的字符还是字节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16956555/