您的位置:首页 > 数据库 > Oracle

ORACLE 常见的数据类型

2011-06-24 22:52 190 查看
1: VARCHAR2存储可变长度的字符串。虽然也必须指定一个VARCHAR2数据变量的长度,但是这个长度是指对该变量赋值的的最大长度而非实际赋值长度。不需要用空格填充。最多可设置为4000个字符。因为VARCHAR2数据类型只存储为该列所赋的字符(不加空格),所以VARCHAR2需要的存储空间比CHAR数据类型要小。

Oracle推荐使用VARCHAR2

2:数字数据类型

Oracle使用标准、可变长度的内部格式来存储数字。这个内部格式精度可以高达38位。

NUMBER数据类型可以有两个限定符,如: column NUMBER ( precision, scale)

precision表示数字中的有效位。如果没有指定precision的话,Oracle将使用38作为精度。

scale表示数字小数点右边的位数,scale默认设置为0.  如果把scale设成负数,Oracle将把该数字取舍到小数点左边的指定位数。

3:LOB

LOB(大型对象)数据类型,可以保存4GB的信息。LOB有以下3种类型:

。CLOB,只能存储字符数据

。NCLOB,保存本地语言字符集数据

。BLOB,以二进制信息保存数据

可以指定将一个LOB数据保存在Oracle数据库内,还是指向一个包含次数据的外部文件。

LOB可以参与事务。管理LOB中的数据必须通过DBMS_LOB PL/SQL内置软件包或者OCI接口。

为了便于将LONG数据类型转换成LOB,Oracle9i包含许多同时支持LOB和LONG的函数,还包括一个ALTER TABLE语句的的新选择,它允许将LONG数据类型自动转换成LOB.

4:Long

但是long类型有一些限制,在一个表中只能有一个long字段

5: CHAR CHAR数据类型存储固定长度的子符值。一个CHAR数据类型可以包括1到2000个字符。如果对CHAR没有明确地说明长度,它的默认长度则设置为.如果对某个CHAR类型变量赋值,其长度小于规定的长度,那么Oracle自动用空格填充。

6: NCHAR和NVARCHAR2 NCHAR和NVARCHAR2数据类型分别存储固定长度与可变长度的字符数据,但是它们使用的是和数据库其他类型不同的字符集。在创建数据库时,需要指 定所使用的字符集,以便对数据库中数据进行编码。还可以指定一个辅助的字符集[即本地语言集(National Language Set,简称NLS)]。NCHAR和NVARCHAR2类型的列使用辅助字符集。、

7:LONG LONG数据类型可以存放2GB的字符数据,它是从早期版本中继承来的。现在如果想存储大容量的数据,Oracle推荐使用CLOB和NCLOB数据类型。在表和SQL语句中使用LONG类型有许多限制。

LONG 数据类型中存储的是可变长字符串,最大长度限制是2GB。

8:CLOB和NCLOB CLOB和NCLOB数据类型可以存储多达4GB的字符数据。NCLOB数据类型可存储NLS数据。

-------------------------------------------------------------------------------------------------------------

数据类型
长度

Char
1~2000字符

varchar2
1~4000字符

nchar
1~2000

nvarchar2
1~2000

number
38位

long
2GB,有很多的限制

blob
4GB,字符

clob
4GB,二进制
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: