常见面试题5

发布时间 2023-10-06 23:14:29作者: 云梦ym

六 char和varchar的区别是什么?

1.char类型的长度是固定的,varchar的长度是可变的。

这就表示,存储字符串'abc',使用char(10),表示存储的字符将占10个字节(包括7个空字符)

使用varchar(10),则表示只占3个字节,10是最大值,当存储的字符小于10时,按照实际的长度存储。

2.char类型的效率比varchar的效率稍高

3.varchar与varchar2的区别

varchar2是oracle开发的一个数据类型。

sql标准的varchar可以存储空字符串,oracle的varchar2还可以存储NULL值,如果想要有向后兼容的能力建议使用varchar2

4.varchar比char节省空间,但是在效率上比char稍差些。既要获得效率即必须牺牲一点空间,这就是设计上的""以空间换时间""

varchar虽然比char节省空间,但是一个varchar列经常被修改,而且每次修改的数据长度不同,这会引起“行迁移的现象”,

而这造成的多余的I/O,是数据库设计中尽量避免的,在这种情况下使用char代替varchar会更好些。
————————————————
版权声明:本文为CSDN博主「姜小白程序」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_59281987/article/details/128408175