jabc执行和提交的区别

有时候exectue()就执行了,好像说的是会自动提交
而有时候对于要手动提交的时候,那么执行和提交到底什么区别啊。。。。

默认自动提交,就是自动刷新数据的变更到数据库。
也可以设置手动提交,这样就是告诉数据库我要执行这个sql,但其实还未执行,你需要手动执行提交,当你有多个sql需要绑定到一起执行提交的时候,就是一个sql未执行成功,所有的sql回滚的时候你就需要用到手动提交了,要不然就得手动写逻辑代码回滚了。

你所说的执行是 JDBC自动提交 ,一般都是这种情况

而提交的话,首先你要了解数据库事务,如果不了解的话,那就先记住一点,exectue()方法相当于在数据库中执行某条语句
然后这条数据的执行结果不一定会被保存,必须经过一个为“提交”的行为这个执行结果才会被保存

你指的提交实际上就是JDBC事务管理

提交的具体行为为,先将jdbc自动提交为false,之后先执行exectue()方法,然后执行commit()方法提交代码,最后设置jdbc自动提交为true。

因为篇幅的原因就不详细写了,可以百度JDBC事务管理进行详细的了解,或者先简单的将你说的执行当做我刚才说的一系列操作的集合