1、数值类型
NUMBER[(P, S)],用于存储整数和实数。
P是精度,表示数值的总位数,最大38位,S是刻度范围,可在-84…127间取值。
- 例:NUMBER(5,2)可以用来存储表示-999.99…999.99间的数值。
- P、S可以在定义时省略,例如:NUMBER(6)、NUMBER等。
2、字符类型
① CHAR[(n[BYTE|CHAR])],用于存储定长的字符串。
例:CHAR(n)。n为字符串长度,最大为2000字节。
② VARCHAR2[(n[BYTE|CHAR])],描述变长字符串。
- 例:VARCHAR2(n)。n为字符串长度,最大为4000字节。
- 当列中保存的字符串长度小于n时,按实际长度分配空间。
③ LONG,用于存储高达2GB的的可变字符串。
④ NCHAR、NVARCHAR2,国家字符集,用来存储Unicode类型字符串。
3、日期类型
① DATE:用于存储固定长度的日期和时间数据。
② TIMESTAMP[(n)]:允许存储小数形式的秒值。
③ INTERVAL YEAR(n) TO MONTH:存储以年份和月份表示的时间段。
- 例:INTERVAL ‘3-6’ YEAR TO MONTH表示3年6个月。
④ INTERVAL DAY(m) TO SECOND(n):存储以天数、小时数、分钟数和秒数表示的时间段。 - 例:INTERVAL ‘3 6:20:10’ DAY TO SECOND表示3天6小时20分10秒。
4、LOB类型
① CLOB:存储大量字符数据。
② NCLOB:用来存储可变长度的Unicode字符数据。
③ BLOB:存储较大的可变长度的二进制对象,如图形、视频剪辑和声音文件。
④ BFILE:存储指向二进制格式文件的定位器。
5、RAW和LONG RAW 类型
用来存储二进制数据。
① RAW:类似于CHAR,声明方式RAW(L),L为长度,以字节为单位,作为数据库列最大2000,作为变量最大32767字节。
② LONG RAW:类似于LONG,作为数据库列最大存储2G字节的数据,作为变量最大32760字节。
6、 行类型
① ROWID:ROWID数据类型被称为“伪列类型”,用于Oracle内部保存表中每条记录的物理地址。
Oracle通过ROWID可最快地定位某行具体数据的位置。在使用ROWID字段时必须显式指定名称。
② UROWID:行标识符,用于表示索引化表中行的逻辑地址。