首页 > 解决方案 > 在 Oracle 中提交和回滚 DML 语句

问题描述

我正在尝试更新一个简单的语句。

我想要的是 :

示例

Update empcp set sal = sal +1000 where empid = 1;

如果它是回滚,应该提交true

标签: oraclecommitrollbackdml

解决方案


假设您正在使用 PL/SQL,您可以使用sql%rowcount来查看最新的 DML 语句是否对任何行产生了影响。

if sql%rowcount > 0 then commit; else rollback; end if;

请记住,您必须将这段代码放在 DML 语句之后,以便sql%rowcount产生相关的受影响行数。更多关于这里rownum的伪列。


推荐阅读