oraclestudy

Oracle数据类型

Oracle入门教程:Oracle数据类型,Oracle数据库的核心是表,表中的列使用到的常见数据类型如下:

类型

含义

CHAR(length)

存储固定长度的字符串。参数length指定了长度,如果存储的字符串长度小于length,用空格填充。默认长度是1,最长不超过2000字节。

NCHAR

NLS(national language support , 国际语言支持)的数据类型仅可以存储由数据库 NLS 字符集定义的 Unicode 字符集。该数据类型最多可以存储2000B。NCHAR 的列在位数不够时需要在右边填充空格。

VARCHAR

存储可变长度的字符串。length指定了该字符串的最大长度。默认长度是1,最长不超过2000字符。

VARCHAR2(length)

存储可变长度的字符串。length指定了该字符串的最大长度。默认长度是1,最长不超过4000字符。VARCHAR2 比 VARCHAR 更适合使用,由于兼容性的原因,所以仍然在 Oracle 数据库中保留着 VARCHAR 。

NUMBER(p,s)

既可以存储浮点数,也可以存储整数,p表示数字的最大位数(如果是小数包括整数部分和小数部分和小数点,p=1 to 38),s是指小数位数,s=-84 to 127。

DATE

存储日期和时间,存储纪元、4位年、月、日、时、分、秒,存储时间从公元前4712年1月1日到公元后4712年12月31日。

TIMESTAMP

不但存储日期的年月日,时分秒,以及秒后6位,同时包含时区。

CLOB

存储大的文本,比如存储非结构化的XML文档

BLOB

存储二进制对象,如图形、视频、声音等。

表1 Oracle的部分数据类型

格式

输入的数字

实际的存储

NUMBER

1234.567

1234.567

NUMBER(6,2)

123.4567

123.46

NUMBER(4,2)

12345.67

输入的数字超过了所指定的精度,数据库不能存储

表2 Number示例

对于日期类型,可以使用sysdate内置函数可以获取当前的系统日期和时间,返回DATE类型,用systimestamp函数可以返回当前日期、时间和时区。

图1 sysdate和sysTimestamp

 

Oracle的查询中,必须使用“select 列… from 表”的完整语法,当查询单行函数的时候,from后面使用DUAL表,dual表在系统中只有一行一列,该表在输出单行函数时为了select…from的语法完整性而使用。

来源:CUUG官网

分类:

技术点:

相关文章: