我感兴趣的是 NVarchar(MAX) 一个好的数据类型是我想存储 1-50 个字符长的短 unicode 字符串,但它们中的大多数(超过 90%)都是 5-10 个字符长?
该列不会用于比较和排序查询。它可能作为包含列添加到索引中。预期的行数 - 超过 10M。
有什么建议吗?先感谢您!
为什么要对这么短的字符串使用 nvarchar(MAX)?如果您知道最大长度为 50 个字符,请将其设为 nvarchar(50)。
另外,我不相信 nvarchar(MAX) 列可以包含在索引中,因为它会打破 900 字节的限制。
NVARCHAR(MAX) (我认为它与 SQL Server 早期版本中的 NTEXT 相同)旨在存储可变的长文本值并且可能无限长。
如果您知道这些值不会超过 N 个字符,则应使用 NVARCHAR(N)。
如果最大长度确实是 50 ,我建议nvarchar(50)更合适。