参数绑定参数名称无效:

时间:2016-11-16 15:10:39

标签: c# oracle stored-procedures

我尝试调用一个过程,该过程将对象表的自定义数据类型作为输出参数之一。我得到一个异常,告诉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;

它像我提到的一样例外,所以我错过了什么?

0 个答案:

没有答案