小编典典

确定Nvarchar长度

sql

我已经阅读了有关varchar和nvarchar的全部内容。但是我没有看到我认为是一个简单问题的答案。您如何确定nvarchar列的长度?对于varchar,这非常简单:例如,我的描述可以包含100个字符,因此我定义了varchar(100)。现在,我被告知我们需要国际化和支持任何语言。这是否意味着我需要将Description列更改为nvarchar(200),即只需将长度加倍?(并且我暂时忽略了与国际化有关的所有其他问题。)

这么简单吗?


阅读 234

收藏
2021-04-22

共1个答案

小编典典

通常,它与varchar真实情况相同。该数字仍然是最大字符数,而不是数据长度。

nvarchar(100) 允许100个字符(在SQL Server中可能消耗200个字节)。

您可能要考虑到这样一个事实,即不同的文化可能需要更多的角色来表达同一件事。

但是,如果使用SC排序规则(支持补充字符),则是一个例外。在这种情况下,单个字符可能最多占用4个字节。

因此,最糟糕的情况是将声明的字符值加倍。

2021-04-22