最近在小破站看视频学习MySQL相关的东西,记录一下遇到的各种问题
设置关闭自动提交失败
跟着视频学JDBC中的事务机制
conn.setAutoCommit(false);
conn.commit();
conn.rollback();
这些都写好了,也放在合适的位置了,但是运行后发现还是自动提交了,于是我又查看了关闭自动提交的代码,发现没有问题,又改换了commit()的位置,还是出错。
想了好久才想到,应该是MySQL数据库的问题,然后又想起了好像不是所有的引擎都支持事务机制的,只有InnoDB才支持事务
于是我查看了操作的表的引擎,发现这张表的引擎是MyISAM,是不支持事物的
于是更改为InnoDB
再进行事务操作的时候,就能正常运行了
查看和更改表引擎的操作
以下是查看表的引擎的命令
show create table tableName;
更改表的引擎的命令
ALTER TABLE salgrade ENGINE = type;
其中type为表的引擎的名称
当然,这些操作用Navicat做就非常简单了,在设计表的选项里直接更改就可以了,不得不说Navicat真好用!!!