您的位置:首页 > 数据库 > Oracle

Oracle数据类型

2016-08-09 09:31 127 查看
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官网
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: