51.笔记 MySQL学习——使用事务保存点句

来源:互联网 发布:韩春雨 知乎 编辑:程序博客网 时间:2024/05/29 19:41

51.笔记 MySQL学习——使用事务保存点句

MYSQL可以让我们对事务进行部分回滚,就是在事务里调用SAVEPOINT语句来设置一些命名标记。如果想要回滚到那个标记点位置,需要使用ROLLBACK语句来指定哪个保存点。

如下:

mysql> truncate table d;

Query OK, 0 rows affected (0.02 sec)

mysql> start transaction;

Query OK, 0 rows affected (0.00 sec)

mysql> insert into d values(1);

Query OK, 1 row affected (0.01 sec)

mysql> savepoint my_savepoint;

Query OK, 0 rows affected (0.00 sec)

mysql> insert into d values(2);

Query OK, 1 row affected (0.00 sec)

mysql> rollback to savepoint my_savepoint;

Query OK, 0 rows affected (0.00 sec)

mysql> insert into d values(3);

Query OK, 1 row affected (0.00 sec)

mysql> commit;

Query OK, 0 rows affected (0.00 sec)

mysql> select * from d;

+------+

| name |

+------+

| 1   |

| 3   |

+------+

2 rows in set (0.00 sec)