我目前有一个函数,该函数接受类型为P_Item_Code
的参数varchar2
。
我想知道是否有
If does not exist
条声明,我可以
返回一个字符串
Item Code does not exist
吗?
下面的想法与我的想法类似:
(P_Binder Number number, P_Item_Code varchar2)
If P_item_code not exists THEN
R_Output := 'Item code does not exist'
Return R_Output;
答案 0 :(得分:1)
我这样做的方法只是使用count()
。
为此,请声明此变量:
record_count number;
然后在函数体内使用它,就像这样:
select count(*) into record_count
from some_code_table
where item_code_key = P_item_code;
if record_count=0 then
R_Output := 'Item code does not exist';
Return R_Output;
end if;
只需相应地替换标识符即可。
答案 1 :(得分:0)
我认为您想检查P_Item_Code
是否存在非null值。
您可以检查变量是否为null,也可以通过添加DEFAULT NULL
来增加变量(对于根本没有传递参数的情况)。
(P_Binder Number, P_Item_Code varchar2 DEFAULT NULL) --If the calling program doesn't pass anything it will be null
If P_item_code IS NULL THEN
R_Output := 'Item code does not exist'
Return R_Output;
答案 2 :(得分:0)
您可以使用nvl()
函数直接绑定:
R_Output := nvl(to_char(P_Binder) ,'Item code does not exist');