char和varchar2的异同点
前言
最近备考时刚好遇到这个知识点,觉得char和varchar2的不同点可以从评价算法的三个标准(空间复杂度,时间复杂度,稳定性)来区分,就mark一下。
创新互联公司专注于改则企业网站建设,成都响应式网站建设公司,商城网站开发。改则网站建设公司,为改则等地区提供建站服务。全流程按需设计网站,专业设计,全程项目跟踪,创新互联公司专业和态度为您提供的服务
相同点
char和varchar2都是用来存储字符的。
不同点
内存消耗
char是固定长度字符型数据,长度以字节为单位,最小长度和默认长度都为1,最大长度为2000。 varchar2是长度变化的字符型数据,最小长度为1,最大长度为4000。 varchar2的长度取决于存储的字符串长度,char是固定长度,多出部分用空格填充。 varchar2比char更节省空间。
效率
使用varchar2时Oracle需要进行语法分析,分析这个字段有多少个字符,所以稍微慢一点 char的效率比varchar2的效率稍高(以空间换时间)
稳定性
如果一个varchar2列经常被修改,而且每次被修改的数据的长度不同,会引起“行迁移”现象, 而造成多余的I/O,这是数据库设计时要尽量避免的,在这种情况下用char代替varchar2会更好一点。
敲重点
当我们查询的字段使用固定长度字符型数据时,需要注意格式,查询的字符串长度需要与数据类型长度相等,否则查不到数据。
本文标题:char和varchar2的异同点
标题来源:http://pwwzsj.com/article/gpcgee.html