今天自己弄了一个单元测试, 测试一下 spring + mybatis, 结果在插入数据时, 故意抛了一个异常, 发现数据库仍然插入成功, 没有回滚, 找了半天, 发现配置没有什么错误,
最后突然想起来, 好像 mysql 只有 InnoDB 引擎支持事务, 赶紧插一下, 果然, 数据库默认引擎竟然是MyISAM , 赶紧修改, 重启服务后就好了. 具体查询和修改方法如下"
查询数据库引擎: SHOW ENGINES; 结果如下
修改数据库默认引擎方法:
linux 下在 etc/my.cnf 最下面加上default-storage-engine=InnoDB, windows 下修改 my.ini, 加上上面那句话
查看某个表的语句: show table create ***(表名);
修改已创建的表的引擎: alter talbe *** type = InnoDB;
本文通过一个单元测试案例,介绍了如何解决在使用Spring+MyBatis进行数据操作时遇到的事务未能正常回滚的问题,并详细说明了如何检查及更改MySQL数据库引擎以确保事务正确执行。
2057

被折叠的 条评论
为什么被折叠?



