美文网首页
Oracle基本数据类型

Oracle基本数据类型

作者: gigglesoso | 来源:发表于2018-12-17 19:17 被阅读0次

            Oracle在创建表时,每一列都会分配一种数据类型,这决定了该列值的特性。 从总的数据类型种类上大致可以分为字符型数据数字型数据时间型数据大对象数据类型Row和RowId数据类型。下面列举常用的数据类型。


    字符型数据

          VARCHAR2:可变长度的字符数据,使用数据库字符集存储;通常设置该字符类型时会指定相应的长度,例如varchar2(100),这里需要注意的是后面的100表示100字节,即100byte,这在保存数字或者英文时没有什么区别,但是保存汉字时,如果数据库字符集是GBK,那么该列可以保存100/2=50个汉字,如果是UTF-8,该列可以保存100/3=33个汉字。数据库字符集是数据库创建时设置的,通常不能更改。

          NVARCHAR2:这个和VARCHAR2一样,区别在于该类型使用国家语言字符集存贮;国家语言字符集可以认为是为oracle选择的附加字符集,这通常是为了增强Oracle字符处理能力;通常使用这种字符集存储的数据类型使用频率不高。

           CHAR:和VARCHAR2的区别在于是定长类型,同样保存在数据库字符集中,如果保存的数据长度没有达到设定的长度,则会使用空格填充。


     数字型数据  

            NUMBER:数字数据,可以指定它的精度和小数位数;通常格式NUMBER ( precision, scale) ,precision表示精度(1-38),指的有效数字的位数,scale表示小数位数(-84-127)。

            FLOAT:一个ANSI数据类型,精度为126位二进制、38位十进制的浮点数。另外Oracle还提供BINARY_FLOAT和BINARY_DOUBLE作为备选。

            INTEGER:存储整型数据,小数位数为0,相当于NUMBER(P,0)。


    日期型数据

            DATE:存储日期类型,可以精确到秒,通常存储格式是年月日时分秒;常用。

            TIMESTAMP:和DATE相比,这个可以精确到纳秒,存储时间精度更高;常用。

            TIMESTAMP WITH TIMEZONE:和TIMESTAMP一样,只不过可以在设置时候指定时区。

            INTERVAL YEAR TO MONTH:记录两个DATE或TIMESTAMP之间的以年和月的时间间隔。

            INTERVAL DAY TO SECOND:记录两个DATE或TIMESTAMP之间的以天和秒的时间间隔。


    大对象数据类型

            CLOB:保存在数据库字符集中的字符数据,大小没有限制;

            NCLOB:作用和CLOB一样,但是保存在国家语言字符集中;     


    RAW和ROWID数据类型

            RAW:可变长度的二进制数据;

            ROWID:指向表中行的位置的指针,他里面是物理地址,是Oracle专有数据类型。



    相关文章

      网友评论

          本文标题:Oracle基本数据类型

          本文链接:https://www.haomeiwen.com/subject/gjeckqtx.html