1. 程式人生 > >oracle 調用包體的函數並返回return值

oracle 調用包體的函數並返回return值

datarow ret .com rect tex ring catch param finally

/// <summary>
/// 執行數據庫包體操作,返回結果
/// </summary>
/// <param name="cmdText">包體函數或存儲過程</param>
/// <param name="commandParameters">參數集合</param>
/// <returns></returns>
public static int ExecuteNonQuery_package(string cmdText,string canshu)
{
int result;
OracleConnection conn 
= new OracleConnection(connstr); OracleCommand cmd = conn.CreateCommand(); try { OracleParameter[] parameters = { new OracleParameter("返回參數",OracleDbType.Int32,1,ParameterDirection.ReturnValue,true,0,0,"",DataRowVersion.Default,Convert.DBNull), new OracleParameter("參數名與數據庫一致",OracleDbType.Varchar2,100) }; parameters[
1].Value = canshu; cmd.CommandText = cmdText; cmd.CommandType = CommandType.StoredProcedure; foreach (OracleParameter param in parameters) cmd.Parameters.Add(param); conn.Open(); cmd.ExecuteNonQuery(); var aaa = parameters[0].Value.ToString(); result= Convert.ToInt32(aaa); } catch (Exception) { throw
; } finally { cmd.Dispose(); conn.Close(); conn.Dispose(); } return result; }

oracle 調用包體的函數並返回return值