Oracle经过长时间的发展,很多用户都很了解Oracle数据类型了,这里我发表一下个人理解,和大家讨论讨论。在数据库中创建数据表的时候,我们需要定义表中所有字段的类型,Oracle数据类型大致分为:character,numberic,date,lob和raw等,这些是最基本的Oracle数据类型。当然在Oracle中也允许自定义数据类型!
在Oracle中提供的character数据类型:
◆char(<size>:固定长度字符串,***长度为2000字节,如果不指定长充,缺省为1个字节长。
◆varchar2(<size>:可变长度的字符串,***长度为4000字节,具体定义时指明***长度,这种类型可以放数字、字母以及ASCII码字符集(或者EBCDIC等数据库系统接受的字符集标准)中的所有符号。如果数据长度没有达到***值,Oracle会根据数据大小自动调节字段长度。是最长用的数据类型。
◆nchar(<size>:根据字符集而定的固定长度字符串,***长度2000字节。
◆nvarchar2(<size>:根据字符集而定的可变长度字符串,***长度4000字节。
◆long:可变长字符列,***长度限制为2GB,用于不需要作字符串搜索的长串数据。此类型是一个遗留下来的而且将来不会被支持的数据类型,逐渐被BLOB,CLOB,NCLOB等大的数据类型所取代。
numberic数据类型用来存储负的和正的整数,分数和浮点型数据,在Oracle中提供的numberic数据类型:
number(<m>,<n>:可变长的数值列,允许0、正值及负值,m是所有的有效数字的位数,n是小数点以后的位数。
在Oracle中提供的date数据类型:
date:缺省格式是dd-mon-yy(日-月-年)
在Oracle中提供的lob数据类型:
◆blob、clob、nclob:三种大型对象(lob),用来保存较大的图形文件或带格式的文本文件,如word文档,以及音频、视频等非文本文件,***长充是4GB。晕些数据存储在数据库内部保存。
◆bfile:在数据库外部保存的大型二进制对象文件,***长度是4GB,这种外部的LOB类型,通过数据库记录变化情况,但是数据的具体保存是在数据库外部进行的。
在Oracle中提供的raw数据类型:
◆raw(<size>:可变长二进制数据,具体定义字段时必须指明***长度,这种格式用来保存较小的图形文件或带格式的文本文件,它也是一种较老的数据类型,将被lob数据类型所取代。
◆long raw:可变长二进制数据,***长度是2GB,可以用来保存较大的图形或带格式的文本文件,以及音频、视频等非文本文件,这也是一种较老的数据类型,将被lob数据类型所取代。
其它的Oracle数据类型:
◆rowid:这是Oracle数据表中的一个伪例,它是数据表中每行数据内在的唯一标识
◆integer:整数类型
【编辑推荐】