对于德语字符的可变长度,我应该使用什么数据类型?
What data type should I use for variable length with German characters?
对于德语字符的可变长度,我应该使用什么数据类型?
我不确定以下是否正确。
public const string stFIELD_DEFINITIONS = " fstInfo VARCHAR(100) CHARACTER SET UNICODE_FSS, fiKeyID INTEGER PRIMARY KEY ";
"VARCHAR(x) CHARACTER SET UNICODE_FSS" 根据 https://firebirdsql.org/manual/migration-mssql-data-types.html.
描述为 "fixed length"
VARCHAR
不是固定长度的,它只有一个最大长度。上面三行 nchar
的条目看起来像是复制和粘贴错误。
尽管如此,您应该使用 UTF8
而不是 UNICODE_FSS
。不同之处在于 UNICODE_FSS
被限制为 1-3 个字节的 UTF-8(所谓的 'file system safe'-set),而 UTF8
允许整个范围。老实说,该文档似乎有点过时了,例如 bigint
的等价物是 BIGINT
,而不是 INT64
,唯一标识符作为 CHAR(16) CHARACTER SET OCTETS
一起使用会更好与 UUID functions
对于德语字符的可变长度,我应该使用什么数据类型?
我不确定以下是否正确。
public const string stFIELD_DEFINITIONS = " fstInfo VARCHAR(100) CHARACTER SET UNICODE_FSS, fiKeyID INTEGER PRIMARY KEY ";
"VARCHAR(x) CHARACTER SET UNICODE_FSS" 根据 https://firebirdsql.org/manual/migration-mssql-data-types.html.
描述为 "fixed length"VARCHAR
不是固定长度的,它只有一个最大长度。上面三行 nchar
的条目看起来像是复制和粘贴错误。
尽管如此,您应该使用 UTF8
而不是 UNICODE_FSS
。不同之处在于 UNICODE_FSS
被限制为 1-3 个字节的 UTF-8(所谓的 'file system safe'-set),而 UTF8
允许整个范围。老实说,该文档似乎有点过时了,例如 bigint
的等价物是 BIGINT
,而不是 INT64
,唯一标识符作为 CHAR(16) CHARACTER SET OCTETS
一起使用会更好与 UUID functions