我尝试调用一个过程,该过程将对象表的自定义数据类型作为输出参数之一。我得到一个异常,告诉Invalid参数绑定参数名称:p_list_employe
签名:
This is pqItem [1,2]
Null null
Null [1,2]
Worked
This is pqItem [Hiya,3]
Null null
Null [Hiya,3]
这是我试图调用的程序:
FUNCTION employe.Package.get_employees ( p_Id IN VARCHAR2,
p_type IN VARCHAR2,
p_code OUT VARCHAR2,
p_msg OUT VARCHAR2,
p_list_employe OUT p_list_employe
)
RETURN PLS_INTEGER
p_list_employe is an object array LIST_EMP as shown here :
LIST_EMP AS OBJECT
( sNumEmp VARCHAR2(20),
sfileNumber VARCHAR2(20),
nDisp NUMBER(18,0),
nUtl NUMBER(18,0),
sType VARCHAR2(2)
)
这就是我用c#代码调用它的方式:
DECLARE
Return_Value NUMBER;
p_code_retour VARCHAR2(32000);
p_msg_retour VARCHAR2(32000);
p_dot_list_carte powercard.t_dot_list_carte;
BEGIN
Return_Value := employe.Package.get_employees(
p_Id=>'1',
p_type=>'2',
p_code=>p_code,
p_msg=>p_msg,
p_list_employe=>p_list_employe);
dbms_output.put_line('Return_Value=' || Return_Value );
dbms_output.put_line('P_CODE=' || P_CODE );
dbms_output.put_line('P_MSG=' || P_MSG );
dbms_output.put_line('p_list_employe(1).sNumEmp=' || p_list_employe(1).sNumEmp);
END;
它像我提到的一样例外,所以我错过了什么?