您的位置:首页 > 数据库 > MySQL

[mysql] Some non-transactional changed tables couldn't be rolled back

2015-05-28 19:15 696 查看
使用peewee的事务时,碰到一个郁闷的问题,事务似乎无效!

于是简化了下模型,写了简单的测试代码,发现问题,如题所示。

找到解答:
https://github.com/etianen/django-reversion/issues/362 https://dev.mysql.com/doc/refman/5.0/en/nontransactional-tables.html
原因就是数据库表的引擎需要设置为InnoDB才能支持事物,解决方法如下:
http://dev.mysql.com/doc/refman/5.6/en/converting-tables-to-innodb.html
即,将需要支持事物的表的引擎设置为InnoDB,sql如下:

alter table my_table engine=InnoDB;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: