gpt4 book ai didi

oracle - 在oracle中执行存储过程后是否会发生任何自动提交?

转载 作者:行者123 更新时间:2023-12-04 16:31:07 25 4
gpt4 key购买 nike

我在 oracle DB 中有 3 个表。我正在编写一个程序来根据某些条件删除所有 3 个表中的某些行。

我已经在程序中一一使用了所有三个删除语句。在执行上述存储过程时,执行时是否发生了自动提交?

否则,我是否需要在最后手动编码提交?

最佳答案

数据库级别没有自动提交,但您使用的 API 可能具有自动提交功能。 From Tom Kyte .

也就是说,我想补充一点:

除非你在做一个自治事务,否则你应该避免在过程中直接提交:From Tom Kyte .

摘抄:

I wish PLSQL didn't support commit/rollback. I firmly believe transaction control MUST be done at the topmost, invoker level. That is the only way you can take these N stored procedures and tie them together in a transaction.



此外,还应该注意的是,对于 DDL(根据您的问题,您听起来不像在您的程序中执行任何 DDL,但只是将其列为潜在的问题),Oracle 在之前和之后添加了一个隐式提交DDL。

关于oracle - 在oracle中执行存储过程后是否会发生任何自动提交?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34182975/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com