oracle 调用包体的函数并返回return值


/// <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;
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM