char 长度不可变,varchar 长度可变。
还有其他区别吗?
既然 varchar 是不定长的为什么,定义的时候还要指出长度呢?
显著区别:(摘抄复制粘贴)
varchar 存储大小为输入数据的字节的实际长度,而不是 n 个字节
char 存储大小为 n 个字节
如果希望列中的数据值大小接近一致,请使用 char。
如果希望列中的数据值大小显著不同,请使用 varchar
varchar 存储大小为输入数据的字节的实际长度,而不是 n 个字节
char 存储大小为 n 个字节
如果希望列中的数据值大小接近一致,请使用 char。
如果希望列中的数据值大小显著不同,请使用 varchar
温馨提示:答案为网友推荐,仅供参考
第1个回答 2020-07-17
char会自动填充空格,varchar不会。所以varchar比较节省空间,但是检索效率char高一点。用法不存在什么区别。
举个例子吧
字段a为char(5)类型
字段b为varchar(5)类型
向a,b中赋值'123'
a的结果是'123'(123+两个空格)
b的结果是'123'
举个例子吧
字段a为char(5)类型
字段b为varchar(5)类型
向a,b中赋值'123'
a的结果是'123'(123+两个空格)
b的结果是'123'