J2EE社区

苟有恒,何必三更起五更眠;
最无益,只怕一日曝十日寒.
posts - 241, comments - 318, trackbacks - 0, articles - 16

oracle中varchar,varchar2,nvarchar,nvarchar2有什么区别?

Posted on 2009-10-06 01:55 xcp 阅读(3976) 评论(0)  编辑  收藏 所属分类: Database

 现在版本的Oracle,varchar和varchar2是没有区别的,varchar2和ANSI   varchar的区别是varchar2把空串等同于null处理。这也是为什么ORACLE推荐使用varchar2类型的原因,因为如果新版本Oralce的varchar类型完全兼容ANSI标准时,使用varchar2的脚本可以不修改。

至于一个varchar2字符要用几个字节存储,要看数据库使用的字符集,比如GBK,汉字就会占两个字节,英文1个,如果是UTF-8,汉字一般占3个字节,英文还是1个。

而NCHAR、NVARCHAR是以UNICODE-16存储,每个字符固定两个字节。



转载于http://topic.csdn.net/u/20070918/09/762642ab-4dbd-41cb-b412-0ebe380f85a1.html


名称: ♪4C.ESL | .↗Evon
口号: 遇到新问题♪先要寻找一个方案乄而不是创造一个方案こ
mail: 联系我