study/oracle/oracle数据类型.md

50 lines
3.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## oracle数据类型
1. `varcha2` 字母数字型数据类型最大长度是4000字节或者字符是变长字符串。
### 数字类型
1. `NUMBER`类型:
`NUMBER(P,S)`是最常见的数字类型可以存放数据范围为10^130~10^126不包含此值)需要1~22字节(BYTE)不等的存储空间。
2. `INTEGER`类型
`INTEGER`是`NUMBER`的子类型它等同于NUMBER38,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数据库生成的。