50 lines
3.0 KiB
Markdown
50 lines
3.0 KiB
Markdown
## oracle数据类型
|
||
1. `varcha2` 字母数字型数据类型,最大长度是4000字节或者字符,是变长字符串。
|
||
### 数字类型
|
||
1. `NUMBER`类型:
|
||
`NUMBER(P,S)`是最常见的数字类型,可以存放数据范围为10^130~10^126(不包含此值),需要1~22字节(BYTE)不等的存储空间。
|
||
2. `INTEGER`类型
|
||
`INTEGER`是`NUMBER`的子类型,它等同于NUMBER(38,0),用来存储整数。若插入、更新的数值有小数,则会被四舍五入。
|
||
3. 浮点型
|
||
`BINARY_FLOAT` 是 32 位、 单精度浮点数字数据类型。可以支持至少6位精度,每个 `BINARY_FLOAT` 的值需要 5 个字节,包括长度字节。
|
||
`BINARY_DOUBLE` 是为 64 位,双精度浮点数字数据类型。每个 `BINARY_DOUBLE` 的值需要 9 个字节,包括长度字节。
|
||
3. FLOAT 类型
|
||
FLOAT类型也是NUMBER的子类型。
|
||
|
||
### 日期类型
|
||
1. DATE类型
|
||
Oracle 存储以下信息: 世纪、 年、 月、 日期、 小时、 分钟和秒。一般占用7个字节的存储空间。
|
||
2. TIMASTAMP类型
|
||
这是一个7字节或12字节的定宽日期/时间数据类型。它与DATE数据类型不同,因为TIMESTAMP可以包含小数秒,带小数秒的TIMESTAMP在小数点右边最多可以保留9位
|
||
3. TIMESTAMP WITH TIME ZONE类型
|
||
这是TIMESTAMP类型的变种,它包含了时区偏移量的值
|
||
|
||
### LOB类型
|
||
内置的LOB数据类型包括BLOB、CLOB、NCLOB、BFILE(外部存储)的大型化和非结构化数据,如文本、图像、视屏、空间数据存储。BLOB、CLOB、NCLOB类型
|
||
#### CLOB类型
|
||
它存储单字节和多字节字符数据。支持固定宽度和可变宽度的字符集。CLOB对象可以存储最多4G文本数据
|
||
|
||
#### NCLOB类型
|
||
它存储UNICODE类型的数据,支持固定宽度和可变宽度的字符集,NCLOB对象可以存储最多4G大小的文本数据。
|
||
|
||
#### BLOB类型
|
||
它存储非结构化的二进制数据大对象,它可以被认为是没有字符集语义的比特流,一般是图像、声音、视频等文件。
|
||
|
||
#### BFILE类型
|
||
二进制文件,存储在数据库外的系统文件,只读的,数据库会将该文件当二进制文件处理
|
||
|
||
## RAR & LONG RAW 类型
|
||
|
||
### LONG 类型
|
||
它存储变长字符串,最多达2G的字符数据(2GB是指2千兆字节, 而不是2千兆字符),与VARCHAR2 或CHAR 类型一样,存储在LONG 类型中的文本要进行字符集转换。ORACLE建议开发中使用CLOB替代LONG类型。支持LONG 列只是为了保证向后兼容性。CLOB类型比LONG类型的限制要少得多。
|
||
|
||
### LONG RAW 类型
|
||
能存储2GB 的原始二进制数据(不用进行字符集转换的数据)
|
||
|
||
### RAW 类型
|
||
用于存储二进制或字符类型数据,变长二进制数据类型,这说明采用这种数据类型存储的数据不会发生字符集转换。这种类型最多可以存储2,000字节的信息
|
||
|
||
## ROWID & UROWID 类型
|
||
在数据库中的每一行都有一个地址。然而,一些表行的地址不是物理或永久的,或者不是ORACLE数据库生成的。
|
||
|