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

Oracle 事务的开始与结束

2014-07-01 16:04 267 查看
事务是用来分割数据库活动的逻辑工作单元,事务即有起点,也有终点;

事物的处理就是保证数据操作的完整性,所有的操作要么成功要么同时失败。

当下列事件之一发生时,事务就开始了:

连接到数据库上,并执行了第一条 DML 语句;
当前一个事务结束后,又输入了另外一条 DML 语句;

当下列事件之一发生时,事务就结束了:

执行 COMMIT 或 ROLLBACK语句;
执行一条 DLL语句,例如 CREATE TABLE 语句;在这种情况下, 会自动执行 COMMIT 语句;
执行一条 DCL语句,例如GRANT语句;在这种情况下,会自动执行COMMIT语句;
断开与数据库的连接。在退出SQL*Plus时,通常会输入EXIT命令,此时会自动执行COMMIT语句。如果SQL*Plus被意外终止了(例如运行SQL*Plus的计算机崩溃了),那么就会自动执行ROLLBACK语句;
执行了一条DML语句,该语句却失败了;在这种情况中,会为这个无效的DML语句执行ROLLBACK;

注意:事务完成之后,如果不显示地提交或回滚事务,都被认为是不好的编程习惯,因此确保在每个事务后面都要执行COMMIT或ROLLBACK语句。

DML(data manipulation language 数据操控语言):用于操作数据库对象中包含的数据,也就是说操作的单位是记录。

DML的主要语句(操作):

Insert语句:向数据表张插入一条记录。

Delete语句:删除数据表中的一条或多条记录,也可以删除数据表中的所有记录,但是,它的操作对象仍是记录。

Update语句:用于修改已存在表中的记录的内容。

DDL(Data Definition Language 数据定义语言):用于操作对象和对象的属性,这种对象包括数据库本身,以及数据库对象,像:表、视图等等,

DDL的主要语句(操作):

Create语句:可以创建数据库和数据库的一些对象。

Drop语句:可以删除数据表、索引、触发程序、条件约束以及数据表的权限等。

Alter语句:修改数据表定义及属性。

DCL(Data Control Language 数据控制语句)的操作是数据库对象的权限,这些操作的确定使数据更加的安全。

DCL的主要语句(操作):

Grant语句:允许对象的创建者给某用户或某组或所有用户(PUBLIC)某些特定的权限。

Revoke语句:可以废除某用户或某组或所有用户访问权限
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: