编辑: 雨林姑娘 | 2019-07-03 |
本章介绍 Oracle 的数据类型和运算符,主要 内容包括常见数据类型的概念与应用、数据类型的选择方法、常见运算符的应用等. 重点导读 ・熟悉常见数据类型的概念和区别. ・掌握如何选择数据类型. ・熟悉常见运算符的概念和区别. 6.1 Oracle 数据类型介绍 Oracle 支持多种数据类型,按照类型来分,可以分为字符串类型、数字类型、日期类型、LOB 类型、 LONG RAW&
RAW 类型、ROWID&
UROWID 类型.其中最常用的数据类型包括数值类型、日期与时间类 型和字符串类型等. 6.1.1 数值类型 数值型数据类型主要用来存储数字,Oracle 提供了多种数值数据类型,不同的数据类型提供不同的取 值范围,可以存储的值范围越大,其所需要的存储空间也越大.表6-1 为Oracle 的常用数值类型. 表6-1 Oracle 的常用数值类型 类型名称描述NUMBER(P,S) 数字类型,P 为整数位,S 为小数位 DECIMAL(P,S) 数字类型,P 为整数位,S 为小数位 第6章数据类型和运算符
087 续表 类型名称描述INTEGER 整数类型,数值较小的整数 FLOAT 浮点数类型,NUMBER(38),双精度 REAL 实数类型,NUMBER(63),精度更高 Oracle 的数值类型主要通过 number(m,n)类型来实现,语法格式如下: number(m,n) 其中,m 的取值范围为 1~38,n 的取值范围为-84~127. number(m,n)是可变长的数值列,允许
0、正值及负值,m 是所有有效数字的位数,n 是小数点以后的 位数.例如: number(5,2) 这个字段的最大值是 99.999,如果数值超出了位数限制,就会被截取多余的位数.例如: number(5,2) 但在一行数据中的这个字段输入 575.316,则真正保存到字段中的数值是 575.32.例如: number(3,0) 输入 575.316,真正保存的数据是 575.对于整数,可以省略后面的 0,直接表示如下: number(3) 【例6-1】创建表 tb_emp1,其中 tel 字段的数值最大设定为 11,在SQL Plus 窗口中输入的 SQL 语句 如下: CREATE TABLE tb_emp1 ( id NUMBER(11), name VARCHAR2(25), age NUMBER(2), tel NUMBER(11), address VARCHAR2(25) );
按Enter 键,语句执行结果如图 6-1 所示,即可完成数据表的创建. 这里可以看到 age 字段的数据类型为 NUMBER(2),注意到后面的数字 2,这表示的是该数据类型指定 的最大长度,如果插入数值的位数大于 2,则会弹出错误信息.例如,这里插入一个大于
2 位的数值来表 示年龄,可以在 SQL Plus 窗口中输入以下 SQL 语句: INSERT INTO tb_emp1(age)VALUES(100);
按Enter 键,语句执行结果如图 6-2 所示,可以看到提示的错误信息. 图6-1 创建表 tb_emp1 图6-2 错误信息提示 Oracle 从入门到项目实践(超值版)
088 在SQL Plus 窗口中修改 SQL 语句: INSERT INTO tb_emp1(age)VALUES(50);
按Enter 键,语句执行结果如图 6-3 所示,可以看到成功创建行. 在SQL Plus 窗口中输入查看表结构的 SQL 语句: SELECT * FROM tb_emp1;
按Enter 键,语句执行结果如图 6-4 所示,可以看到成功创建行. 图6-3 插入一行数据 图6-4 查看表结构 【例6-2】 创建表 tb_emp2, 其中字段 a、 b、 c 数据类型依次为 NUMBER(2)、 NUMBER(4)、 NUMBER(6), 在SQL Plus 窗口中输入的 SQL 语句如下: CREATE TABLE tb_emp2 ( a NUMBER(2), b NUMBER(4), c NUMBER(6) );