ado.net执行oracle 存储过程

来源:网络时间:2011-06-23

  ado.net执行oracle 存储过程如下:

  OracleConnection con=new OracleConnection(strcon);

  OracleCommand cmd=new OracleCommand();

  OracleTransaction mytrans ;

  try

  {

  con.Open ();

  mytrans =con.BeginTransaction();

  cmd.Connection =con;

  cmd.CommandText ="rfgetid";

  cmd.CommandType =CommandType .StoredProcedure;

  cmd.Transaction =mytrans ;

  OracleParameter parameter_in=new OracleParameter("as_bm",OracleType.Char);

  OracleParameter parameter_out=new OracleParameter ("as_sxh",OracleType .Number );

  parameter_in.Direction =ParameterDirection .Input;

  parameter_out.Direction=ParameterDirection .Output ;

  parameter_in .Value =tblname.ToUpper();

  cmd.Parameters .Add(parameter_in );

  cmd.Parameters.Add(parameter_out);

  cmd.ExecuteNonQuery();

  mytrans .Commit();

  return int.Parse(parameter_out .Value.ToString()) ;

  }

  catch(Exception er)

  {

  throw new Exception(er.Message);

  mytrans .Rollback();

  }

  finally

  {

  cmd.Dispose ();

  con.Close ();

  }

发表评论

最新评论(共0条)