SQLServer中char、varchar、nchar、nvarchar的区别
程序员文章站
2024-01-08 21:31:58
...
1.有var前缀的,表示是实际存储空间是变长的,varchar,nvarchar 所谓定长就是长度固定的,当输入的数据长度没有达到指定的长度时将自动以英文空在其后面填充,使长度达到相应的长度;而变长字符数据则不会以空填充,比较例外的是,text存储的也是可变长。 2.
1.有var前缀的,表示是实际存储空间是变长的,varchar,nvarchar所谓定长就是长度固定的,当输入的数据长度没有达到指定的长度时将自动以英文空格在其后面填充,使长度达到相应的长度;而变长字符数据则不会以空格填充,比较例外的是,text存储的也是可变长。
2.有n前缀的,n表示Unicode字符,即所有字符都占两个字节,nchar,nvarchar
字符中,英文字符只需要一个字节存储就足够了,但汉字众多,需要两个字节存储,英文与汉字同时存在时容易造成混乱,Unicode字符集就是为了解决字符集这种不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两个字节表示。
3.基于以上两点来看看字段容量
char,varchar 最多8000个英文,4000个汉字
nchar,nvarchar 可存储4000个字符,无论英文还是汉字
推荐阅读
-
SQLServer中char、varchar、nchar、nvarchar的区别
-
mysql中char与varchar的区别分析_MySQL
-
Oracle中的Char与Varchar的区别和实例
-
Oracle数据库中的varchar,varchar2,nvarchar,nvarchar2区别及用
-
Oracle中的Char与Varchar的区别和实例
-
Sqlserver中char,nchar,varchar与Nvarchar的区别分析
-
基于SQL Server中char,nchar,varchar,nvarchar的使用区别
-
mysql中char与varchar的区别分析
-
Sqlserver中char,nchar,varchar与Nvarchar的区别分析
-
SQL Server数据类型char、nchar、varchar、nvarchar的区别浅析