c#调用oracle具有输入输出参数还有返回值的自定义函数
函数如下:
CREATE OR REPLACE FUNCTION function1(
f1 integer,
f2 out varchar2
) return integer is
//业务处理
if then
return 0;
elsif then
retrun -1;
end if;
c#怎么调用?谢谢
------解决方案--------------------
和调用存储过程是一样滴
http://bbs.csdn.net/topics/330222462 参考以前的帖子
------解决方案--------------------
OracleConnection con = new OracleConnection("");
OracleCommand cmd = new OracleCommand();
OracleParameter p1 = new OracleParameter("f1", OracleType.Int32);
p1.Direction = ParameterDirection.Input;
p1.Value = 5;
OracleParameter p2 = new OracleParameter("f2", OracleType.VarChar);
p2.Direction = ParameterDirection.Output;
p2.Value = "f";
OracleParameter p3 = new OracleParameter();
p3.OracleType = OracleType.Int32;
p3.Direction = ParameterDirection.ReturnValue;
cmd.Parameters.Add(p1);
cmd.Parameters.Add(p2);
cmd.Parameters.Add(p3);
cmd.Connection = con;
cmd.CommandText = "function1";
cmd.CommandType = CommandType.StoredProcedure;
con.Open();
cmd.ExecuteNonQuery();
con.Close();