我使用mysql java连接器(mysql-connector-java-8.0.11)来访问数据库。 我打开一个连接并生成一些表。到目前为止一切正常。
但是当我尝试在其中一个表中插入一个值时,该行立即被删除。
我使用以下代码
PreparedStatement stmt = connection.prepareStatement("INSERT INTO database_upgrade (version) VALUES (?)");
stmt.setInt(1, newVersion);
stmt.executeUpdate();
stmt.close();
当我调试executeUpdate时,insertId和updateCount被正确返回。但是当我查看数据库时,条目丢失了。 自动增量id增加,表示该行已插入然后删除,但我不知道原因。
有趣的一点:如果我为这个插件使用新的连接,一切都很完美。但是,当我使用之前操作的连接时,它不会。
仅供澄清
谁能告诉我为什么会这样?我在MS SQL服务器上使用了相同的代码,但这并没有发生。
谢谢!
答案 0 :(得分:1)
解决方案:我删除了sql文件中的autoCommit禁用部分。