我有两个带有preparedStatement 的查询块。
这是第一个:
String sql = "update cikan_malzeme set miktar = ? where proje_id = ? and malzeme_id = ?";
PreparedStatement prep = dbConnect.connection.prepareStatement(sql);
prep.setFloat(1, toplam);
prep.setInt(2, pid);
prep.setInt(3, mid);
prep.executeUpdate();
这是第二个:
String sql2 = "update malzemeler set miktar = ? where malz_adi = ?";
PreparedStatement prep2 = dbConnect.connection.prepareStatement(sql2);
prep2.setFloat(1, fark);
prep2.setString(2, malzemeadi);
prep2.executeUpdate();
现在我想通过事务 BEGIN 来执行它们;并提交;
如何使用preparedStatement处理事务?
你应该使用Connection.setAutoCommit(false)禁用自动提交和Connection.commit() and Connection.rollback().
禁用自动提交后,第一次执行需要事务的命令或查询时,事务将自动启动。
您不应该使用数据库特定的事务控制命令,因为驱动程序很可能在发出 commit() 或 rollback() 时对资源进行额外的清理。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)