SQL INSERT是否可以在PL/SQL中引发异常而失败

aw *_*rud 3 sql oracle plsql

是否存在INSERTSQL(特别是Oracle-PL/SQL)在没有抛出异常的情况下失败的情况?在INSERT验证SQL%ROWCOUNT = 1 ELSE它引发自己的用户定义异常之后,我看到代码中的检查.我不知道怎么会发生这种情况.

Ton*_*ews 8

没有例外,它不会失败,不.可能是编写代码的开发人员不知道这一点.

一个after语句触发器可以想象删除刚刚插入的行.当然,INSERT ... SELECT可能找不到要插入的行,因此会导致SQL%ROWCOUNT = 0.