温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

char和varchar2的异同点

发布时间:2020-03-02 19:09:47 来源:网络 阅读:323 作者:季沉Trace 栏目:关系型数据库

前言

最近备考时刚好遇到这个知识点,觉得char和varchar2的不同点可以从评价算法的三个标准(空间复杂度,时间复杂度,稳定性)来区分,就mark一下。

相同点

char和varchar2都是用来存储字符的。

不同点

  1. 内存消耗

    char是固定长度字符型数据,长度以字节为单位,最小长度和默认长度都为1,最大长度为2000。
    varchar2是长度变化的字符型数据,最小长度为1,最大长度为4000。
    varchar2的长度取决于存储的字符串长度,char是固定长度,多出部分用空格填充。
    varchar2比char更节省空间。
  2. 效率

    使用varchar2时Oracle需要进行语法分析,分析这个字段有多少个字符,所以稍微慢一点
    char的效率比varchar2的效率稍高(以空间换时间)
  3. 稳定性

    如果一个varchar2列经常被修改,而且每次被修改的数据的长度不同,会引起“行迁移”现象,
    而造成多余的I/O,这是数据库设计时要尽量避免的,在这种情况下用char代替varchar2会更好一点。

敲重点

当我们查询的字段使用固定长度字符型数据时,需要注意格式,查询的字符串长度需要与数据类型长度相等,否则查不到数据。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI