char 是固定长度 但速度效率高
比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间
varchar 是存储变长数据 但存储效率没有CHAR高
VARCHAR类型的实际长度是它的值的实际长度+1。为什么“+1”呢?这一个字节用于保存实际使用了多大的长度
Nvarchar 对每个英文(ASCII)字符都占用2个字节,对一个汉字也占用两个字节,所有的字符都占用2个字节。
varchar一般适用于英文和数字,Nvarchar适用中文和其他字符,其中N表示Unicode常量,可以解决多语言字符集之间的转换问题
varchar的1位即1个字节,它也会用两个位(两个字节)去存一个汉字。而nvarchar的1位就是2个字节,因此它存一个汉字,占用的大小是1位。
换句话说varchar(100)能存50个汉字,nvarchar(100)能存100个汉字。