I have an Oracle function, which takes 3 parameters and return records which has four columns.
But I am getting an exception which is
ORA-06550: line 1, column 7:
PLS-00221: 'get_receipts' is not a procedure or is undefined
this is my code:
OracleConnection con = new OracleConnection(oracleDB);
con.Open();
OracleCommand cmd = new OracleCommand();
cmd.Connection = con;
cmd.CommandText = "get_receipts";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new OracleParameter("p_store_num", store_num));
cmd.Parameters.Add(new OracleParameter("p_create_dt", create_date));
cmd.Parameters.Add(new OracleParameter("p_cc_last4", cc_last4));
OracleDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
ResponseModel sample = new ResponseModel();
sample.Field1 = dr.GetString(0);
sample.Field2 = dr.GetString(1);
sample.Field3 = dr.GetString(2);
sample.Field4 = dr.GetString(3);
response.Add(sample);
}
for oracle it is a little trickier
you have to return the result set as a ref_cursor type from your procedure
check this out
https://learn.microsoft.com/en-us/dotnet/framework/data/adonet/oracle-ref-cursors