什么是NVARCHAR(MAX)的最大字符数?
我已经在SQL Server 2008中声明了一个NVARCHAR(MAX)
types的列,它的最大长度是多less?
NVARCHAR(MAX)
types的列的最大大小是2 GB的存储空间。
由于NVARCHAR
使用每个字符2个字节, 十亿字。
列夫·托尔斯托的“ 战争与和平”是一本1'440页的书,内容大约有60万字 – 可能是600万字 – 完全取整。 所以你可以把整个“ 战争与和平”书的大约166份拷贝放到每个NVARCHAR(MAX)
列中。
这是足够的空间满足您的需求吗? 🙂
默认情况下,除非实际长度超过4000个字符,否则nvarchar(MAX)值的存储方式与nvarchar(4000)值完全相同。 在这种情况下,行内数据被指向存储数据的一个或多个独立页面的指针替代。
如果您预计数据可能超过4000个字符,nvarchar(MAX)绝对是推荐的select。
资料来源: http : //social.msdn.microsoft.com/Forums/en-US/databasedesign/thread/d5e0c6e5-8e44-4ad5-9591-20dc0ac7a870/
我认为实际上nvarchar(MAX)可以存储大约1070000000个字符。
nvarchar [(n | max)]
可变长度的Unicodestring数据。 n定义string的长度,可以是从1到4,000的值。 max表示最大存储大小为2 ^ 31-1字节(2 GB)。 存储大小(以字节为单位)是input数据的实际长度+ 2个字节的两倍