2013-04-08

[ASP.NET] 執行Stored Procedure,並取得回傳值

C#執行Stored Procedure(SP)的方法跟執行一段SQL的寫法很像,直接看範例~
P.S:SP的範例可以參考此篇

// 取得ConnectionString
OracleConnection conn = GetConnectionString();
OracleCommand comm = new OracleCommand();
comm.Connection = conn;

// 指定OracleCommand的CommandType=StoredProcedure
comm.CommandType = CommandType.StoredProcedure;

// 指定OracleCommand的CommandText=要執行的SP名稱
comm.CommandText = "SP1";

//餵給SP1的參數
comm.Parameters.Clear();
comm.Parameters.Add("sYEAR", OracleType.VarChar).Value = "30";

//設定SP的回傳參數和大小
comm.Parameters.Add("sRETURN_VALUE", OracleType.VarChar).Direction = ParameterDirection.Output;
comm.Parameters["sRETURN_VALUE"].Size = 100;

//呼叫SP
comm.ExecuteNonQuery();

//取得回傳的參數
string sResult = comm.Parameters["sRETURN_VALUE"].Value.ToString();

沒有留言:

張貼留言