SQL%NOTFOUND 是一个布尔值。与最近的sql语句(update,insert,delete,select)发生交互,当最近的一条sql语句没有涉及任何行的时候,则返回true。否则返回false。这样的语句在实际应用中,是非常有用的。例如要update一行数据时,如果没有找到,就可以作相应操作。如:
begin
update salary set bonus = 1000 where emp_id = 10;
if sql%notfound then
insert salary(bonus)values(100);
end if;
.................
当update emp_id为10的这行记录,而这行记录不存在,则作了相应的异常抛出。