我在ORACLE
中有这种类型:
create or replace type error_record is object(
error number(1),
error_message varchar2(500));
存储过程返回此类型:
function some_func(params....) return error_record;
我正在努力执行此函数的代码并获得返回值。我看到的每个示例都使用OracleDbType.Object
,但没有这样的枚举值。
using (OracleConnection con = new OracleConnection(...))
{
using (OracleCommand cmd = new OracleCommand("some_func", con))
{
cmd.CommandType = CommandType.StoredProcedure;
var pResult = new OracleParameter();
//pResult.OracleDbType = OracleDbType.Object;
pResult.UdtTypeName = "error_record";
pResult.Direction = ParameterDirection.ReturnValue;
cmd.Parameters.Add(pResult);
con.Open();
cmd.ExecuteNonQuery();
....
}
}