Mysql_ トランザクション操作 (トランザクション、セーブポイント、ロールバック)

1. 一般的な操作手順 

 1. まずテーブルを作成します

create table swcz (
        id int,
        `name` varchar(32)
);

2. トランザクションを開始する

start transaction;

 

 

3. セーブポイントaを設定する

savepoint a;

 

 

4. dml操作を実行します。

insert into swcz values(100,'jack');

select * from swcz;

検索結果: 

 

 

5.セーブポイントbを設定する

savepoint b; 

 

 

6.DML操作の実行

insert into swcz values(200,'tom');

select * from swcz;

検索結果: 

 

 7. トランザクション b にロールバックします。

rollback to b;

8. テーブルを再度クエリします。

select * from swcz;

 トランザクションが b に戻ることがわかります (b が作成されたばかりのときは、データ 100 'jack' が 1 つだけありました)。

9. トランザクション a にフォールバックします

rollback to a;

 10. テーブルを再度クエリします。

select * from swcz;

 トランザクションに戻ると (つまり、テーブルが確立されたばかりである) に戻ることがわかります。

2. 関連する操作

-- 直接回到事务开始的状态
rollback

-- 提交、结束事务,所有的操作生效,即保存、提交目前的事务,不能退回
commit

おすすめ

転載: blog.csdn.net/qq_56520755/article/details/130330701