我对 oracle PLSQL 完全陌生。任何帮助都值得赞赏。
我在 SO 上找不到类似的问题(也许它太基础了?)
我正在运行来自 TOAD、Oracle 11G 的代码
SET SERVEROUTPUT ON
DECLARE
var titres%ROWTYPE;
BEGIN
select reference, sicovam into
var.reference, var.sicovam
from titres
where reference = '1234';
if sql%notfound then
dbms_output.put_line('NOT FOUND');
else
dbms_output.put_line(var.reference || ' ' || var.sicovam);
end if;
END;
如果Where
子句可以提取一行数据,那么它将运行该else
部分
如果Where
子句无法提取任何行,则会显示错误:
ORA-01403: no data found
ORA-06512: at line 4
谁能指出我正确的方向?谢谢
我尝试过使用基本的异常处理代码
When others then
null;
end;
然后我得到另一个奇怪的结果:如果Where
子句可以提取一行数据,那么它将不会运行该else
部分或if
部分。