如果我想使用异常处理来捕获此错误,我需要照顾的事情是什么?错误的数字或参数类型的调用(当调用过程/函数时)
wrong number or types of arguments in call (while calling a procedure/function)
我试着以不同的方式。你能解释一下吗?我有一个函数:
create or replace function test5(v varchar2) return varchar as
begin
execute immediate 'begin sweet.g:=:v;end;'
using in v;
return sweet.g;
exception
when others then
return sqlcode||' '||sqlerrm;
end test5;
和包装规格和身体:
create or replace package SWEET as
function c (v varchar2,V2 VARCHAR2) return varchar2;
g varchar(100);
end;
/
create or replace package body SWEET as
function c(v varchar2, V2 varchar2) return varchar2 as
begin
return v||'hi'|| V2;
end c;
end;
/
当我执行下面的语句,我没能赶上
“的参数类型或数值错误”select test5(sweet.c(,'hello')) from dual;
该函数不会编译,因为:'PLS-00201:标识符'必须声明'SWEET.G'。你需要在函数中声明它。你如何执行'select'语句?你只是运行单个查询还是它在一个PL/SQL块?当我尝试它时,我得到'SQL错误:ORA-00936:缺少表达式。“ –