事务
1 事务定义
数据库事务是SQL语句的组合作为一个“工作单元”.要么全部完成,要么全部不做.
每个事务都有一个开始和一个结束。
2 事务开始
1. 你连接到数据库并执行DML语句(INSERT, UPDATE,或 DELETE).
2. 前一个事务结束 并且你输入了一个DML语句.
3 事务的结束
1. 你执行了 COMMIT 或 ROLLBACK命令.
2. 你执行了一个DDL语句, 例如CREATE TABLE语句,这种情况下,自动执行COMMIT .你执行了一个DCL语句, 例如GRANT语句, ,这种情况下,自动执行COMMIT.
你从数据库断开连接.如果你正常退出 SQL*Plus, 通过执行EXIT命令, 那么会自动执行一个COMMIT.如果SQL*Plus非正常退出—例如, SQL*Plus 运行的电脑崩溃—一个ROLLBACK会自动执行. 这适用于所有程序访问一个数据库. 例如, 你编写了一个Java程序来访问数据库,但你程序崩溃了, 一个ROLLBACK将被自动执行.
3. 你执行了一条 DML语句失败了,那么一条ROLLBACK 会自动执行对那个语句.