Oracle中varchar2(* char)与varchar2(*)的区别打赏

最近用到Hibernate自动建表,在用到String的时候,默认会创建varchar2类型字段,如:设置length=10,则创建后字段属性为varchar2(10 char),而非varchar2(10)。

由于之前没留意到这个,就网上查了一下,才知道原来基础都没记牢(也许一开始就没接触到,至少印象中一直使用的后者)。其实,这个这两种写法还真有点不一样之处,varchar2(10 char)表示10个字符,这个类型可以存储10个多字节字符的,如如10个汉字,而varchar2(10)实际上市varchar2(10 byte)的简写,表示两个字节,注意,前者是字符,这里是字节,就是说这个类型是不能存储10个多字节字符的。

偶然发现,总结下,以备忘。玩数据库比较少,熟手勿拍!

Oracle中varchar2(* char)与varchar2(*)的区别
文章《Oracle中varchar2(* char)与varchar2(*)的区别》二维码
  • 微信打赏
  • 支付宝打赏

已有5条评论

  1. 二八讯特

    支持

    2014-04-12 10:59 回复
  2. 二八讯特

    支持支持吧

    2014-04-10 11:21 回复
  3. 娱乐城讯特

    楼主早

    2014-03-29 10:04 回复
  4. 娱乐城讯特

    支持支持呢

    2014-03-25 15:38 回复
  5. 娱乐城讯特

    支持支持楼主吧…

    2014-03-18 14:41 回复

(必填)

(必填)

(可选)