使用以下 C# 代码(使用 devArt 的 dotConnect for Oracle 组件):
OracleParameter pRes = new OracleParameter("C_REF", OracleDbType.Cursor);
pRes.Direction = ParameterDirection.ReturnValue;
oracleCommand1.Parameters.Clear();
oracleCommand1.Parameters.Add("iStartDate", "01-jan-2011");
oracleCommand1.Parameters.Add("iEndDate", "21-jan-2011");
oracleCommand1.Parameters.Add("iCATEGORYID", 114);
oracleCommand1.Parameters.Add(pRes);
oracleConnection1.Open();
oracleCommand1.ExecuteCursor();
...我越来越:
Devart.Data.Oracle.OracleException 未处理消息 = ORA-06550:第 2 行,第 13 列:PLS-00306:调用“CONN_THRU_DOTNET”时参数的数量或类型错误 ORA-06550
参数是(从存储过程复制):
iStartDate IN DATE
, iEndDate IN DATE
, iCATEGORYID IN NUMBER
, C_REF IN OUT SYS_REFCURSOR
我认为这是导致问题的日期值。我在这里做错了什么?