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

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

否则,我是否需要在末尾手动编码提交?

最佳答案

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

也就是说,我想补充:

除非您要进行自主事务,否则应避免直接在过程From Tom Kyte中进行提交。

摘抄:



此外,还应注意,对于DDL(基于您的问题,听起来好像您在过程中未执行任何DDL,而只是将其列为潜在陷阱),Oracle在DDL之前和之后添加了隐式提交。 DDL。

10-04 21:37
查看更多