C#中调用Oracle存储过程返回值的issue
string sql = "fnc_get_doc_submit_date"; //存储过程名
OracleConnection conn = new OracleConnection(OracleHelper.ConnectionEformDBString);
OracleCommand cmd = new OracleCommand(sql, conn);
cmd.CommandType = CommandType.StoredProcedure;
OracleParameter a1 = cmd.Parameters.Add("piv_fnc_id", OracleType.VarChar, 11); //存储过程第一个参数a1.Direction = ParameterDirection.Input;
a1.Value = "FNC_IT_ACCT";
OracleParameter a2 = cmd.Parameters.Add("piv_doc_id", OracleType.VarChar, 11);//存储过程第二个参数
a2.Direction = ParameterDirection.Input;
a2.Value = "000649";
OracleParameter aa = cmd.Parameters.Add("result", OracleType.DateTime); //存储过程返回值,DateTime类型
aa.Direction = ParameterDirection.ReturnValue;
conn.Open();
cmd.ExecuteNonQuery();
System.Console.WriteLine(aa.Value.ToString()); // 不管如何修改,都得不到需要返回的值conn.Close();
向高手请教了!