zoukankan      html  css  js  c++  java
  • C# 获取 oracle 存储过程输出参数值

      public bool QueueToRegister(string appointsId, string enrolDoctor)
            {
                using (OleDbConnection conn = new OleDbConnection(DBHelper.Instance.ConnectionStr))
                {
                    conn.Open();
                    OleDbCommand cmd = conn.CreateCommand();
                    try
                    {
                        //插入号源属性
                        cmd.CommandType = CommandType.StoredProcedure;
                        cmd.CommandText = "PROC_APPOINTTOENROL";
                        cmd.Parameters.Add("@p_APPOINTSID", OleDbType.VarChar).Value = appointsId;
                        cmd.Parameters.Add("@p_ENROLDOCTOR", OleDbType.VarChar).Value = enrolDoctor;
                        cmd.Parameters.Add("@p_IsUseCallCode", OleDbType.VarChar).Value = PubVariable.Instance.IsUseCallCode;
                        cmd.Parameters.Add("@p_AreaName", OleDbType.VarChar).Value = PubVariable.Instance.AreaName;
                        cmd.Parameters.Add("@p_result", OleDbType.Integer).Value = -1;
                        cmd.Parameters["@p_result"].Direction = ParameterDirection.InputOutput;
    
                        if (cmd.ExecuteNonQuery() > 0)
                        {
                            var aa = cmd.Parameters["@p_result"].Value.ToString();
                            return true;
                        }
                    }
                    catch { return false; }
                    finally
                    {
                        if (conn.State != ConnectionState.Closed) conn.Close();
                    }
                }
                return false;
            }
    

      

    using (OleDbConnection conn = new OleDbConnection(str))
                {
                    OleDbTransaction tran = null;
                    conn.Open();
                    OleDbCommand cmd = conn.CreateCommand();
                    tran = conn.BeginTransaction(IsolationLevel.ReadCommitted);
                    cmd.Transaction = tran;
                    try
                    {
                        //插入号源属性
                        cmd.CommandType = CommandType.StoredProcedure;
                        cmd.CommandText = "PROC_APPOINTTOENROL";
                        cmd.Parameters.Add("@p_APPOINTSID", OleDbType.VarChar).Value = appointsId;
                        cmd.Parameters.Add("@p_ENROLDOCTOR", OleDbType.VarChar).Value = enrolDoctor;
                        cmd.Parameters.Add("@p_IsUseCallCode", OleDbType.VarChar).Value = isUseCallCode;
                        cmd.Parameters.Add("@p_AreaName", OleDbType.VarChar).Value = areaName;
                        cmd.Parameters.Add("@p_result", OleDbType.Integer).Value = -1;
                        cmd.Parameters["@p_result"].Direction = ParameterDirection.InputOutput;
                       
                        if (cmd.ExecuteNonQuery() > 0)
                        {
                            string result = cmd.Parameters["@p_result"].Value.ToString();
                            log.WriteLogs("QueueToRegister  return  p_result:", "返回结果:", result);
                            if (result.Trim() != "1") return false;
    
                            tran.Commit();
                            log.WriteLogs("执行QueueToRegister:", "执行成功", ofdepart);
                            return true;
                        }
                    }
                    catch (Exception ex)
                    {
                        tran.Rollback();
                        log.WriteLogs("执行QueueToRegister:", "异常", ex.ToString());
                        return false;
                    }
                    finally
                    {
                        if (conn.State != ConnectionState.Closed) conn.Close();
                    }
                }
    

      

  • 相关阅读:
    JavaScript 中document.write() 详细用法介绍
    教你怎么用JavaScript检测当前浏览器是无头浏览器
    JavaScript网页截屏方法,你get到了嘛?
    新手小白该怎么学习前端?附学习路线和资料
    实现微前端需要了解的 Vue Genesis 渲染器
    前端新人关注的Web前端饱和性分析?前端面试必知必会的十点!
    这个前端竟然用动态规划写瀑布流布局?给我打死他!
    Kubernetes之Ingress+Traefik
    MySQL语法大全
    PPTP服务器
  • 原文地址:https://www.cnblogs.com/YYkun/p/11359213.html
Copyright © 2011-2022 走看看