SQL Server 2000中的最大varchar(max)大小

时间:2010-01-16 15:05:57

标签: sql-server sql-server-2000 varchar

我想知道SQL Server 2000中varchar的最大大小是多少。当我在某处搜索时,它写了8000个字符,而某处写的是8060字节。哪一个是正确的?

4 个答案:

答案 0 :(得分:24)

Varchar是8000,nvarchar是4000。

这是varchar msdn参考:
http://msdn.microsoft.com/en-us/library/aa258242(SQL.80).aspx

答案 1 :(得分:11)

SQL Server数据页有8k:8192字节。由此,一部分被保留用于页面标题,留下8060字节,即单行可以具有的最大百分比。 varbinary(n),varchar(n)和nvarchar(n)类型连续不能超过8000个字节,这意味着varchar(8000)是最大的Ascii长度,而nvarchar(4000)是最大的Unicode长度(因为Unicode)将每个字符存储在2个字节上。)

所有这些细节的最佳解释来自Inside the Storage Engine: Anatomy of a page

答案 2 :(得分:2)

据我记得,它是8000 Chars。

对于Nvarchar,它是4000。

答案 3 :(得分:2)

varchar(max)的最大大小很大(我想2GB或2Gchars)。您可以在varchar(n)中为n指定的最大值为8000,对于nvarchar,它的最大值为4000。