Oracle数据库对象类型和列数据类型概述


归类数据库主要的数据类型

All object hava a name and atype, and each object is owned by a schema.

--查询数据库的主要对象类型

selectobject_type,count(object_type) from dba_objects

group by object_typeorder by object_type;

数据库对象的命名规则

1、对象名最长为30个字符,databaselink除外,它可以最长128个字符;

2、保留的关键字不能用于对象名;

3、对象名的首字符必须为字母

4、对象名中只能有三种符号:_ $   #

5、小写字母会自动转换为大写

6、如果用双引号,上述规则可以被打破

对象的命名空间

下列对象使用同一个命名空间:

TABLE

VIEWS

SEQUENCES

PRIVATE SYNONYMS

STAND-ALONE PROCEDURES

STAND-ALONE FUNCTIONS

PACKAGES

MATERIALIZED VIEWS

USER-DEFINED TYPES

以下对象拥有自己独立的命名空间

INDEX

CONSTRAINTS

CLUSTERS

DATABASE TRIGGERS

PRIVATE DATABASE LINKS

 DIMENSIONS

列出数据列可以使用的数据类型

字符类型

VARCHAR2

变长字符类型,1byte—4KB,还有一种VARCHAR类型,他会自动转换为VARCHAR2

NVARCHAR2

类似于VARCHAR2,但是可以存储国际码;

CHAR

固定长度字符类型,1byte—2KB,如果字符长度不足用空格补足;

数值类型

NUMBER

precision(1-38)   sacle(-84,127)

NUMBER ( precision, scale)
    precision表示数字中的有效位。如果没有指定precision的话,Oracle将使用38作为精度。
    scale表示数字小数点右边的位数,scale默认设置为0.  如果把scale设成负数,Oracle将把该数字取舍到小数点左边的指定位数。

FLOAT

precision(138)  BINARY_FLOAT   BINARY_DOUBLE

INTEGER

相当于NUMBER, with scale zero

时间类型

DATE

包含世纪,年,月,日,时,分,秒 范围从公元前4712年1月1日,到公元后9999年12月31日,可以为空或7bytes

TIMESTAMP

和date类似,但是秒的精度更准确,可以为空或11bytes

TIMESTAMP WITH TIMEZON

 

TIMESTAMP WITH LOCAL TIMEZONE

 

INTERVAL YEAR TO MONTH

 

INTERVAL DAY TO SECOND

 

大数据类型

CLOB

 

NCLOB

                                                       

BLOB

 

BFILE

 

LONG

 

LONG RAW

 

其他类型

RAW

                                                                 

ROWID

 

相关内容