Database 有何好处?;数据库连接的自动提交操作模式的缺点?

Database 有何好处?;数据库连接的自动提交操作模式的缺点?,database,hibernate,Database,Hibernate,来自Hibernate文档 许多DBMS通过default在每个新的数据库连接上启用所谓的自动提交模式。autocommit模式对于特别执行SQL非常有用 根据定义,应用程序始终执行计划的语句序列。因此,总是创建事务边界以将语句分组为原子单元似乎是合理的。因此,自动提交模式在应用程序中没有位置 如果没有应用程序会使用默认的自动提交模式,为什么会有默认的自动提交模式?我相信您至少部分地回答了自己的问题: 自动提交模式对于特殊的SQL执行非常有用 是的,对于事务量大的应用程序来说,这可能是不可取的,

来自Hibernate文档

许多DBMS通过
default
在每个新的数据库连接上启用所谓的自动提交模式。
autocommit
模式对于特别执行
SQL
非常有用
根据定义,应用程序始终执行计划的语句序列。因此,总是创建事务边界以将语句分组为原子单元似乎是合理的。因此,自动提交模式在应用程序中没有位置


如果没有应用程序会使用默认的自动提交模式,为什么会有默认的自动提交模式?

我相信您至少部分地回答了自己的问题:

自动提交模式对于特殊的SQL执行非常有用


是的,对于事务量大的应用程序来说,这可能是不可取的,但它在其他环境中仍然有用,例如,临时或小批量插入。

对于可以与一个查询竞争的原子业务流程,使用自动提交更为有效,因为您可以避免额外的
开始
提交
查询

但是,对于其他进程(批量),自动提交不是一个现实的选择,因为在整个进程的一段时间内出现故障,即只有一些更新查询完成时,几乎肯定会使数据库处于不一致的状态,这是非常糟糕的


在一般情况下,最好将事务处理留给事务上下文(数据库库和容器等)。

您可能会看到这个问题,我问了一些类似的问题:一些jdk功能对我来说似乎无法解释,除非被视为运行演示的便利。