16-Oracle入门之数据库事务
基本概念
以第一个 DML 语句的执行作为开始:oracle默认事务似是打开的,但是不自动提交 ,mysql自动提交 。 以下面的其中之一作为结束:
特点 要么都成功,要么都失败
COMMIT和ROLLBACK语句的优点
控制事务回滚到保留点
UPDATE... SAVEPOINT update_done;
Savepoint created. INSERT... ROLLBACK TO update_done;
Rollback complete.
事务进程
提交或回滚前的数据状态
数据的改变已经被保存到数据库中。
提交数据
DELETE FROM employees WHERE employee_id = 99999;
1 row deleted.
INSERT INTO departments VALUES (290,'Corporate Tax',NULL,1700);
1 row inserted.
COMMIT;
Commit complete.
数据回滚后的状态使用 ROLLBACK 语句可使数据变化失效: DELETE FROM copy_emp;
22 rows deleted.
ROLLBACK;
Rollback complete.
create table testsavepoint (tid number,tname varchar2(20));
set feedback on insert into testsavepoint values(1,'tom1');
insert into testsavepoint values(2,'tom2');
savepoint a; //创建一个保存点
insert into testsavepoint values(3,'tom3a); rollback to savepoint a;
语句 |
功能 |
|