mysql事务回滚

mysql使用事务前需确定存储引擎为innodb,譬如删除一个人员数据,会删除和这个人有关的一些数据删除,这个时候就会用到事务,出现一个删除错误整个删除事务就会取消。

事务回滚步骤:

/*创建roll表*/
CREATE TABLE roll(
    id int unsigned primary key auto_increment comment \’主键\’,
    names varchar(64) not null default \’\’ comment \’姓名\’
)CHARSET =UTF8 ENGINE =INNODB;

引擎为INNODB;

/*由于字段太少又插入了一条拥有金额*/

ALTER TABLE roll ADD money float not null default \’0.0\’ comment \’拥有金额\’;

/*插入数据*/
INSERT INTO roll VALUES
    (null,\’lily\’,\’1000.8\’),
    (null,\’lucy\’,\’2009.7\’),
    (null,\’liming\’,\’3009\’);

所建表如下:

回滚事务步骤如下:

  首先开始一个事务代码如下:

  做一个保存点a代码如下:

  执行一个删除动作代码如下:

  再次查询表的内容:

  如果感觉执行操作有问题可以选择回滚到a保存点最后查询数据回到最开始状态代码如下:

注意:如果感觉代码没问题可以执行一个commit,执行完毕以后事务无法再回退.

 

 

 

版权声明:本文为lxc-bky原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/lxc-bky/p/9481861.html