Ciao, ho un problema con la procedura di chiamata del negozio sul server Oracle 11g.ORA-06550: riga 1, colonna 7: PLS-00306: numero errato o tipi di argomenti
questo è il mio stored procedure
PROCEDURE get_rit_by_user_id(KDC_KEY IN VARCHAR2,
p_id_utente IN NUMBER,
p_cur_out OUT type_cursor) IS
BEGIN
...
...
...
END
questo è il mio codice C#
OracleCommand cmd = new OracleCommand();
cmd.Connection = oracleConnection;
cmd.CommandText = userIdEsercizio + packageName + "GET_RIT_BY_USER_ID";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("KDC_KEY", OracleDbType.Varchar2, kdcKey, ParameterDirection.Input);
cmd.Parameters.Add("P_ID_UTENTE", OracleDbType.Int32, user_id, ParameterDirection.Input);
cmd.Parameters.Add("P_CUR_OUT", OracleDbType.RefCursor, ParameterDirection.Output);
OracleDataReader reader = cmd.ExecuteReader();
cmd.ExecuteReader() lanciare questa eccezione
ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'GET_RIT_BY_USER_ID'
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
non riesco a vedere nulla di male nel mio codice C#. Mi aiuterai? grazie
migliori saluti
Mi manca la variabile p_id_utente nell'elenco dei parametri (avete però un P_USER). Gli altri due sono lì. – Independent
questo non è un problema, ho controllato tutti i nomi dei parametri –
Hai guardato questa domanda SO: http://stackoverflow.com/questions/6360244/how-to-call-an-oracle-function- con-a-ref-cursor-as-out-parameter-from-c – DCookie