当no_data_found时发生异常,我想将两个变量分配为null

时间:2019-04-23 09:27:25

标签: oracle exception plsql

我编写了一个选择查询来获取两个列值,以防万一,我想在ORACLE STORED PROCEDURE中将这些变量分配为null。

例如

select column A, column B into l_a, l_b 
  from ......
exception 
  when no_data_found then 
    l_a: = null and l_b := null ;

1 个答案:

答案 0 :(得分:1)

有一个错字。它必须是:=而不是: =。另外,您还需要用分号;分隔语句。通常,语句在单独的行中。

l_a := null;
l_b := null;

此外,您无需分配null。变量最初分配为空,如果找不到数据,则保持空。

当然,如果在值保留之前为变量分配了值。因此,您也可以这样做。

l_a := null;
l_b := null;
select column A, column B into l_a, l_b 
  from ......
-- do something with l_a and l_b here
exception 
  when no_data_found then 
    null; -- ignore and do nothing

但是通往罗马的路总是很多