特别是在SQL Server中,Varchar(50)是否占用与Varchar(MAX)相同的空间?

时间:2014-09-19 11:30:10

标签: sql-server-2008

例如,如果我想存储一个20字节的字符串,VARCHAR(50)字段是否会使用与VARCHAR(MAX)字段相同的空格?

3 个答案:

答案 0 :(得分:1)

是的,只要您使用varchar(20)varchar(max)存储20个字符,它们都会在SQL Server中使用相同的存储空间。

答案 1 :(得分:1)

Varchar(50)最多可存储50个字符。 Varchar(max)最多可存储 2,147,483,647 个字符。 但是,即使您不存储50个字符,varchar(50)也会保留50个字符的空格。但是varchar(max)对任何规模都很灵活。大小没关系。

答案 2 :(得分:0)

这里的空间采用varchar(50)和varchar(max)相同,但不同的是: -

优点: - 如果数据大小小于50字节,则意味着它对数据库磁盘空间中的varchar(50)有好处。

缺点: -

如果您的数据量超过50个字节,那么您将收到错误: - 字符串或二进制数据将被截断。

所以取决于你的要求使用字节。