C#调用Oracle存储过程的方法
本文实例讲述了C#调用Oracle存储过程的方法。分享给大家供大家参考。具体实现方法如下:
Oracle数据库代码如下:
createorreplaceprocedureproce_test(paramininvarchar2,paramoutoutvarchar2,paraminoutinoutvarchar2) as varparamvarchar2(28); begin varparam:=paramin; paramout:=varparam||paraminout; end;
c#调用代码如下:
OracleConnectionconn=null; OracleCommandcmd=null;
stringstrConn="datasource=clientag;userid=ay_plan;password=ayplan"; //连接数据库 conn=newOracleConnection(strConn); try { conn.Open(); cmd=newOracleCommand(); cmd.Connection=conn; } catch(Exceptione) { throwe; }
OracleParameter[]parameters={ newOracleParameter("paramin",OracleType.VarChar,20), newOracleParameter("paramout",OracleType.VarChar,20), newOracleParameter("paraminout",OracleType.VarChar,20) }; parameters[0].Value="bjd"; parameters[2].Value="cs"; parameters[0].Direction=ParameterDirection.Input; parameters[1].Direction=ParameterDirection.Output; parameters[2].Direction=ParameterDirection.InputOutput; try { cmd.CommandText="proce_test";//声明存储过程名 cmd.CommandType=CommandType.StoredProcedure; foreach(OracleParameterparameterinparameters) { cmd.Parameters.Add(parameter); } cmd.ExecuteNonQuery();//执行存储过程
Console.WriteLine(parameters[1].Value.ToString()); Console.Read(); } catch(Exceptione) { throwe; }