Sqlserver 中nchar(n)、varchar(n)、nvarchar(n)和nvarchar(max)的区别

发布时间 2023-07-07 21:40:20作者: 宋军涛

nchar(n):

固定大小字符串数据。 n 用于定义字符串大小(以双字节为单位),并且它必须是 1 到 4,000 之间的值。 存储大小为 n 字节的两倍。

编辑

 

varchar(n):
长度为 n 个字节的可变长度且非 Unicode 的字符数据。n 必须是一个介于 1 和 8,000 之间的数值。存储大小为输入数据的字节的实际长度,而不是 n 个字节。

 

nvarchar(n):

可变大小字符串数据。 n 用于定义字符串大小(以双字节为单位),并且它可能是 1 到 4,000 之间的值

编辑

 

nvarchar(max):

max 指示最大存储大小是 2^31-1 个字符 (2 GB)。 存储大小为 n 字节的两倍 + 2 个字节。

 

nvarchar(n)一个字符会占两个字节空间。
varchar(n)中文占两字节空间,英文占一个。