当前位置:首页 > SCHOOL > Oracle字典 > 正文内容

Oracle数据类型

admin3年前 (2022-03-26)Oracle字典2620

在本教程中,您将了解内置Oracle数据类型的概述。

Oracle数据类型简介

在Oracle中,每个值都有一个数据类型,它定义了一组值。 这些特征导致Oracle将一种数据类型的值与另一种数据类型的值区分开来。 例如,您可以添加数据类型的值,但不能添加原始数据类型的值。

当创建一个新表时,可以为每个列指定一个数据类型。 同样,当创建一个新的过程时,要为它的每个参数指定一个数据类型。 数据类型定义每个列或参数可以存储的允许值。 例如,列不能存储2月30日的值,因为这不是有效的日期。

Oracle具有下表中所示的一些内置数据类型:

代码数据类型
1VARCHAR2(size [BYTE / CHAR])
1NVARCHAR2(size)
2
8LONG
12DATE
22BINARY_DOUBLE
23RAW(size)
24LONG RAW
69ROWID
96CHAR [(size [BYTE / CHAR])]
96NCHAR[(size)]
112CLOB
112NCLOB
113BLOB
114BFILE
180TIMESTAMP [(fractional_seconds)]
181TIMESTAMP [(fractional_seconds)] WITH TIME ZONE
182INTERVAL YEAR [(year_precision)] TO MONTH
183INTERVAL DAY [(day_precision)] TO SECOND[(fractional_seconds)]
208UROWID [(size)]
231TIMESTAMP [(fractional_seconds)] WITH LOCAL TIMEZONE

每种数据类型都有由Oracle内部管理的代码。要查找列中值的数据类型代码,请使用DUMP()函数。

1. 字符数据类型

字符数据类型由:,NCHAR,VARCHAR2,NVARCHAR2和VARCHAR组成。NCHAR和NVARCHAR2数据类型用于存储Unicode字符串。

固定长度字符数据类型是CHAR,NCHAR,可变长度字符数据类型是:VARCHAR2和NVARCHAR2。

VARCHAR是VARCHAR2的同义词。 但是,不建议使用VARCHAR,因为Oracle将来可能会更改它的语义。

对于字符数据类型,可以用字节或字符指定它们的大小。

2. 数字数据类型

NUMBER数据类型具有精度p和比例s。精度范围从1到38,范围从-84到127。
如果不指定精度,那么该列可以存储包括定点数和浮点数的值。比例的默认值是零。

3. 日期时间和时间间隔数据类型

日期时间数据类型是,,和TIMESTAMP WITH LOCAL TIME ZONE。 日期时间数据类型的值是日期时间。

区间数据类型为和。 区间数据类型的值是区间。

4. RAW和LONG RAW数据类型

RAW和LONG RAW数据类型用于存储二进制数据或字节字符串,例如文档,声音文件和视频文件的内容。

RAW数据类型最多可以存储2000字节,而LONG RAW数据类型最多可以存储2GB。

5. BFILE数据类型

BFILE数据类型将定位器存储到位于数据库之外的大型二进制文件。 定位器由目录和文件名组成。

6. BLOB数据类型

BLOB代表二进制大对象。可以使用BLOB数据类型来存储最大大小为(4千兆字节 - 1)*(数据库块大小)的二进制对象。

7. CLOB数据类型

CLOB代表字符大的对象。使用CLOB存储单字节或多字节字符,最大大小为(4千兆字节 - 1)*(数据库块大小)。

请注意,CLOB支持固定字符集和变量字符集。

8. NCLOB数据类型

NCLOB与CLOB类似,不同的是它可以存储Unicode字符。

9. UROWID数据类型

UROWID主要用于ROWID伪列返回的值。它的值是基本的64个字符串,它们表示表中行的唯一地址。

10. 数据类型:Oracle和ANSI

将ANSI数据类型用于列定义时,Oracle将根据以下映射表将Oracle转换为其相应的数据类型:

ANSI SQL数据类型Oracle SQL数据类型
CHARACTER(n), CHAR(n)CHAR(n)
CHARACTER VARYING(n), CHAR VARYING(n)VARCHAR2(n)
NATIONAL CHARACTER(n), NATIONAL CHAR(n), NCHAR(n)NCHAR(n)
NATIONAL CHARACTER VARYING(n), NATIONAL CHAR VARYING(n), NCHAR VARYING(n)NVARCHAR2(n)
NUMERIC(p,s), DECIMAL(p,s) (a)NUMBER(p,s)
INTEGER, INT, SMALLINT
FLOAT (b), DOUBLE PRECISION (c), REAL (d)
 您阅读本篇文章共花了: 

免责声明
本站内容均为博客主本人日常使用记录的存档,如侵犯你的权益请联系:lifei@zaiheze.com 546262132@qq.com 沟通删除事宜。本站仅带访问端口形式使用,已杜绝搜索引擎爬取。

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。