我在oracle DB中有3个表。我正在编写一个程序来根据某些条件删除所有 3 个表中的一些行。
我在程序中一一使用了所有三个删除语句。在执行上述存储过程时,执行时是否发生自动提交?
否则,我是否需要在最后手动编码提交?
数据库级别没有自动提交,但您使用的 API 可能具有自动提交功能。来自汤姆·凯特.
话虽如此,我想补充一点:
除非您正在进行自主事务,否则您应该避免直接在过程中提交:来自汤姆·凯特.
Excerpt:
我希望 PLSQL 不支持提交/回滚。我坚信
事务控制必须在最顶层的调用者级别完成。那
是获取这 N 个存储过程并将它们绑定的唯一方法
一起在交易中。
此外,还应该注意的是,对于 DDL(根据您的问题,听起来您并没有在过程中执行任何 DDL,但只是将其列为潜在的陷阱),Oracle 在数据定义语言。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)