首页 > 数据库技术 > 详细

关于Oracle的varchar2和char

时间:2021-05-25 12:34:30      阅读:19      评论:0      收藏:0      [点我收藏+]

今天遇到的一个问题,因为plsql的自动转义 char<=‘char‘是成立的,但是mybatis是转换成了varchar2
在这里记录下两个类型吧
1,char(size)

  存放定长的字符串,最大存放2000个字符

  PS:字符串的长度一般为16的倍数

  例如 char(32),存放32个字符(超出不行,不够32位使用空格补齐)

如果超出插入不进会出现错误提示
新建表如果超过2000也会报错

2,varchar2(size)

  解释:变长,最大可以存放4000个字符

  新建一个表

  create table stu02(name varchar2(16));

  插入数据并且查看(是变长的不会以空格补齐)

 存放了leo的三个字符,实际存放在数据库中,就只占用了3个字符,其余剩下的字符就被回收了,提高利用率

  说明:

    如果我们的数据是固定长度的,比如手机号码(11位),比如身份证号码,则应当使用插入来存放,这样

  的好处是查询与检索速度较快;

    而如果存放的字符串长度不固定,则建议使用varchar2(size)

  原因:查询char类型的字段时,作为整体进行查询,而varchar2是一个个数据进行对比的

关于Oracle的varchar2和char

原文:https://www.cnblogs.com/key-dsj/p/14807604.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!