一、SQL语句可分为5类:
1. 查询语句 :用于检索数据库中存储的行。
2. 数据操纵语言(Data Manipulation Language,DML)语句 用于修改表的结构。DML语句有三种:
· INSERT 向表中添加行。
· UPDATE 修改行的内容。
· DELETE 删除行
3. 数据定义语言(Data Definition Lanaguage,DDL)语句 用于定义构成数据库的数据结构,例如表。DDL语句有五种基本类型:
l CTEATE 创建数据结构
l ALTER 修改数据库结构
l DROP 删除数据库结构
l RENAME 更改表明
l TRUNCATE 删除表的全部内容。
4. 事务控制(Transaction Control ,TC)语句 用于将对行所做的修改永久性地存储到表中,或者取消这些操作。TC语句有三种:
l COMMIT 永久性地保存对行所做的修改。
l ROLLBACK 取消对行所做的修改。
l SAVAPOINT 设置一个“保存点”,可以将对行所做的修改回滚到此处。
5. 数据控制语言(Data Control Language,DCL)语句 用于修改数据库结构的操作权限。DCL语句有2种:
l GRANT 授予其他用户访问数据库结构(例如表)的访问权限。
l REVOKE 防止其他用户访问数据库结构(例如表)。
二、常用的Oracle数据类型
1. CHAR(length):存储固定长度的字符串。
2. VARCHAR(length):存储可变长度的字符串。
3. DATE :存储日期和时间。
4. INTEGER :存储整数。
5. NUMBER (precision,scale) :存储浮点数,但也可以用来存储整数。
6. BINARY_FLOAT:Oracle 10 g 提供的一种数据类型,用于存储一个单精度的32位浮点数。
7. BINARY_DOUBLE:Oracle 10g 提供的一种新数据类型,用于存储一个双精度的64位浮点数。
下面的例子显示NUMBER类型的数字在数据库中如何存储:
格式 输入的数字 实际存储的值
NUMBER 1234.567 1234.567
NUMBER(6,2) 123.4567 123.46
NUMBER(6,2) 12345.67 输入的数字超过了所指定精度,数据库不能存储
BINARY_FLOAT和BINARY_DOUBLE的优点:
BINARY_FLOAT和BINARY_DOUBLE是对现有的NUMBER类型的补充。与NUMBER
相比,BINARY_FLOAT和BINARY_DOUBLE具有一下的优点:
l 需要的存储空间较小 :BINARY_FLOAT和BINARY_DOUBLE分别需要5个字节和9个字节的存储空间,而NUMBER则可能需要多达22个字节的存储空间。
l 可以表示的数字范围更大 :BINARY_FLOAT和BINARY_DOUBLE 支持比NUMBER类型所能存储的更大或更小的数字。
l 执行运算的速度更快 :对BINARY_FLOAT和BINARY_DOUBLE类型的数据运算通常都比NUMBER类型的数据运算更快。
l 运算封闭:对BINARY_FLOAT和BINARY_DOUBLE进行数学运算是封闭的,这就是说结果要么是数字,要么是个特殊值。
l 取整透明:BINARY_FLOAT和BINARY_DOUBLE使用二进制(以二为基数)来表示数字,而NUMBER则使用十进制(以10为基数)。表示数字所使用的基数会对数值的取整产生影响。例如,一个十进制的浮点数要以最近的十进制位置进行取整,而一个二进制的浮点数则以最近的二进制位置进行取整。