C#调用Oracle存储过程

 数据库:

create or replace procedure proce_test(paramin in varchar2,paramout out varchar2,paraminout in out varchar2)
as
  varparam varchar2(28);
begin
  varparam:=paramin;
  paramout:=varparam|| paraminout; 
end;

 

 

 

c#代码:

 

          OracleConnection conn = null;
            OracleCommand cmd = null;


            string strConn = "data source=clientag;user id=ay_plan;password=ayplan";  //连接数据库
            conn = new OracleConnection(strConn);
            try
            {
                conn.Open();
                cmd = new OracleCommand();
                cmd.Connection = conn;
            }
            catch (Exception e)
            {
                throw e;
            }

 

            OracleParameter[] parameters ={
                                 new OracleParameter("paramin",OracleType.VarChar,20),
                                 new OracleParameter("paramout",OracleType.VarChar,20),
                                 new OracleParameter("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 (OracleParameter parameter in parameters)
                {
                    cmd.Parameters.Add(parameter);
                }
                cmd.ExecuteNonQuery();//执行存储过程

                Console.WriteLine(parameters[1].Value.ToString());
                Console.Read();
            }
            catch (Exception e)
            {
                throw e;
            }

 

 

显示结果: 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值