varchar,nvarchar和char数据类型
- varchar(n):可变长度的非Unicode字符串,最多8000字符。存储方式上是按字节存储。
- nvarchar:可变长度的Unicode字符串。存储方式上是按双字节的字符存储,每个字符占2个字节。
- char(n):固定长度的非Unicode字符串,最多8000字符。存储方式是按字节存储。
举例说明:
-
varchar(20)可以存放20个数字或者英文 或者可以存放10个中文(因为每个英文或者数字只占1个字节,中文占两个字节)
-
nvarchar(20)可以存放20个英文或者数字或者中文(因为nvarchar每一个存储单元只能存一个元素(或者一个字),每一个存储单元只占2个字节)
-
char(5)是固定长度的数据类型,通俗说假如存放2个数字(如下图),此时系统会默认给你补上3个空格;像varchar(5)是可变长度的数据类型,即便存放2个数字,系统不会默认给你补上3个空格,存2个就是两个。