MySQL数据库存储引擎导致事务失败

事务回滚无效原因找到:首先代码没有问题,是数据库存储引擎导致的问题,
mysql数据库存储引擎有:MyISAM、MEMORY、MERGE和InnoDB:
MyISAM:它不支持事务,也不支持外键,尤其是访问速度快.....
InnoDB:有提交、回滚和崩溃恢复能力的事务安全。但是对比MyISAM的存储引擎,InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引。
四种存储引擎的区别,大家百度具体了解一下,这里我就不介绍了;

我们现在开发环境,MySql数据库默认存储引擎是:MyISAM,所以我们创建的表默认使用的是:MyISAM;这是导致昨天测试事务失败的根本原因。
解决办法两种:
1、修改数据库默认存储引擎
2、修改表,把表的存储引擎改为:InnoDB存储引擎

需要把库所有表存储引擎改为:InnoDB

你可能感兴趣的:(MySQL数据库存储引擎导致事务失败)