你是否对Oracle字符的类型有所了解?今天我们就对其进行归纳,其主要有CHAR、NCHAR、LONG、以及VARCHAR2(VARCHAR)、和NVARCHAR2几种Oracle字符类型。以下的文章就是对这几种类型的详细介绍。
CHAR,描述定长的Oracle字符串,如果实际值不够定义的长度,系统将以空格填充。它的声明方式如下CHAR(L),L为Oracle字符串长度,缺省为1,作为变量***32767个字符,作为数据存储在ORACLE8中***为2000。
VARCHAR2(VARCHAR),描述变长字符串。它的声明方式如下VARCHAR2(L),L为字符串长度,没有缺省值,作为变量***32767个字节,作为数据存储在ORACLE8中***为4000。在多字节语言环境中,实际存储的Oracle字符个数可能小于L值。
例如:当语言环境为中文(SIMPLIFIED CHINESE_CHINA.ZHS16GBK)时,一个VARCHAR2(200)的数据列可以保存200个英文字符或者100个汉字字符。
LONG,在数据库存储中可以用来保存高达2G的数据,作为变量,可以表示一个***长度为32760字节的可变字符串。
NCHAR、NVARCHAR2,国家Oracle字符集,与环境变量NLS指定的语言集密切相关,使用方法和CHAR、VARCHAR2相同。
(varchar2是oracle提供的独特的数据类型,oracle保证在任何版本中该数据类型向上和向下兼容,但不保证varchar。因为varchar是标准sql提供的数据类型,有可能随着sql标准的变化而改变,推荐用varchar2。)
(CHAR如果存放字母数字占1个字节,存放GBK编码的汉字存放2个字节,存放UTF-8编码的汉字占用3个字节;NCHAR根据所选Oracle字符集来定义存放字符的占用字节数,一般都为2个字节存放一个字符(不管字符或者汉字)。同理VARCHAR2与NVARCHAR2的区别。)
【编辑推荐】
- Oracle PL/SQL基础知识及其相关概念
- Oracle数据库保持其优良性的手段有哪些
- 九大Oracle性能优化基本方法详解
- Oracle 11g中***有独特点的5大特点
- Oracle DRCP与PHP实际应用的区别