/*创建事务的目的:用户在对数据进行操作时,
  被修改的数据只是被暂存在缓冲区中,
  只有被提交之后其他用户才能访问这部分数据*/
--创建事务,当前用户对数据的修改操作
--执行增、删、改数据的操作时,需要提交事务该部分数据才能生效被其他用户使用
UPDATE STU_INFO S SET S.STU_SEX='女' WHERE S.STU_ID='180301';
UPDATE STU_INFO S SET S.STU_SEX='男' WHERE S.STU_ID='180302';
DELETE FROM STU_INFO S WHERE S.STU_ID='180301';
INSERT INTO STU_INFO (STU_ID,STU_NAME,STU_CLASS,STU_SEX) VALUES('180307','甜甜','3','女');
--回滚事务
ROLLBACK;
--提交事务
COMMIT;

--创建事务的回滚点
SAVEPOINT OP1;--创建还原点
UPDATE STU_INFO S SET S.STU_NAME='操作一。数据被修改了' WHERE S.STU_ID='180301';
SAVEPOINT OP2;
UPDATE STU_INFO S SET S.STU_NAME='操作二。数据被修改了' WHERE S.STU_ID='180302';
SAVEPOINT OP3;
UPDATE STU_INFO S SET S.STU_NAME='操作三。数据被修改了' WHERE S.STU_ID='180303';
--回滚到OP1时所有被修改的数据都还原了
ROLLBACK TO OP1;
--回滚到OP2时数据1被修改,数据2/3还原
ROLLBACK TO OP2;
--回滚到OP3时数据1/2被修改,数据3还原
ROLLBACK TO OP3;

COMMIT;--提交事务
--注意:隐式提交,用户的影响表结构的行为发生时,系统默认直接提交事务

 

相关文章:

  • 2021-10-06
  • 2021-07-13
  • 2021-07-13
  • 2022-01-11
  • 2021-04-12
  • 2021-09-17
  • 2021-04-04
猜你喜欢
  • 2021-09-09
  • 2021-05-21
  • 2021-09-15
  • 2021-12-02
  • 2021-06-29
  • 2021-05-10
  • 2022-12-23
相关资源
相似解决方案