Oracle常用的数据类型
- 格式:pdf
- 大小:77.96 KB
- 文档页数:2
Oracle常⽤的数据类型
(0) Oracle 数据类型
varchar2:可变长字符数据
char(size):定长字符数据
number(p,s):可变长数值数据
date:⽇期型数据
long:可变长字符数据,最⼤可达到2G
clob:字符数据,最⼤可达到4G
RAW(LONG RAW):原始的⼆进制数据
BLOB:⼆进制数据,最⼤可达到4G
BFILE:存储外部⽂件的⼆进制数据,最⼤可达到4G
ROWID:⾏地址
(1)字符类型
① • CHAR:⼀个定长字符串,当位数不⾜⾃动⽤空格填充来达到其最⼤长度。如⾮NULL的CHAR(12)总是包含12字节信息。CHAR字段最多可以存储2,000字节的信息。
② • VARCHAR2:⽬前这也是VARCHAR 的同义词。这是⼀个变长字符串,与CHAR 类型不同,它不会⽤空格填充⾄最⼤长度。VARCHAR2(12)可能包含0~12字节的信息。VARCHAR2最多可以存储4,000 字节的信息。
CHAR和VARCHAR2的⽐较:CHAR(4) “A“ 实际在数据库中存储为"A “,“ABCDE”超长报错VARCHAR2(4) “A” 存储的还是“A”,“ABCDE”超长报错汉字:每个汉字占多少字节,要看具体的编码⽅式,如UTF-8(1-3字节)、GB2312(2字节)、GBK(2字节)、GB18030(1、2、4字节)
(2)数字类型
①• NUMBER:该数据类型能存储精度最多达38位的数字。每个数存储在⼀个变长字段中,其长度在0~22字节之间。的NUMBER类型精度很⾼, 远远⾼于许多编程语⾔中常规的FLOAT和DOUBLE类型。
NUMBER( p,s ) p表⽰精度(总长度) s表⽰⼩数位置且四舍五⼊
NUMBER(10,3) 10是总长度,3是⼩数位数的长度123.456123.4567 :将存储为123.45712345679.899 :精度超长了,10是总长度,3是⼩数位, 整数位为10-3=7位NUMBER(10)==NUMBER(10,0) java.lang.IntegerNUMBER(19)==NUMBER(19,0) java.lang.Long
(3)⽇期类型
①• DATE:⼀个7字节的定宽⽇期/时间数据类型。其中总包含7个属性,包括:世纪、世纪中哪⼀年、⽉份、⽉中的哪⼀天、⼩时、分钟和秒。
②• TIMESTAMP:⼀个7 字节或12.字节的定宽⽇期/时间数据类型。它与DATE 数据类型不同,因为TIMESTAMP 可以包含⼩数秒(fractional second);带⼩数秒的TIMESTAMP 在⼩数点右边最多可以保留9位。
(4)⼆进制及⼤⽂本数据
① • BLOB: (binary large object)在Oracle9i及以前的版本中, 这种数据类型允许存储最多4GB的数据, 在Oracle 10g及以后的版本中允许存储最多(4GB)×(数据库块⼤⼩)字节的数据。BLOB包含不需要进⾏字符集转换的“⼆进制“数据,如果要存储电⼦表格、字处理⽂档、图像⽂件等就很适合采⽤。② • CLOB:(Character Large Object)在Oracle9i及以前的版本中, 这种数据类型允许存储最多4GB的数据, 在Oracle 10g及以后的版本中允许存储最多(4GB)×(数据库块⼤⼩)字节的数据。CLOB包含要进⾏字符集转换的信息。这种数据类型很适合存储纯⽂本信息。