zoukankan      html  css  js  c++  java
  • C#中使用存储过程返回值的问题(转)

    1.存储过程返回SqlDataReader
        public SqlDataReader getaqiyyuy(string qiy)
        {
            SqlConnection userConnection = Connection.getConnection();
            SqlCommand userCommand = new SqlCommand("MVC_getaqiyluy", userConnection);
            userCommand.CommandType = CommandType.StoredProcedure;//采用存储过程
            userCommand.Parameters.Add("@qiy", SqlDbType.VarChar, 50);//存储过程参数
            userCommand.Parameters["@qiy"].Value = qiy;//给参数赋值
            userCommand.Connection.Open();//打开连接
            SqlDataReader datareader;
            datareader = userCommand.ExecuteReader();
            return datareader;
        }
    返回一个SqlDataReader类型的值

    2.返回单个字符
    存储过程
    ALTER  procedure MVC_getqiym
     @yonghm varchar(50),
     @qiy    varchar(50)  OUTPUT   
    as

    set @qiy=(select Q.MingC From T_QiYXXB Q,T_YongHXXB Y
    where Q.QiYBH=Y.QiYBH)

    程序
        public string getqiym(string yonghm)
        {
            string qiy;
            SqlConnection userConnection = Connection.getConnection();
            SqlCommand userCommand = new SqlCommand("MVC_getqiym", userConnection);
            userCommand.CommandType = CommandType.StoredProcedure;//采用存储过程
            userCommand.Parameters.Add("@yonghm", SqlDbType.VarChar, 50);//存储过程参数
            userCommand.Parameters["@yonghm"].Value = yonghm;//给参数赋值
            userCommand.Parameters.Add("@qiy",SqlDbType.VarChar,50);
            userCommand.Parameters["@qiy"].Direction =ParameterDirection.Output;
            userCommand.Connection.Open();//打开连接
            try
            {
                userCommand.ExecuteScalar();
            }
            catch (SqlException ee)
            {
                throw(ee);
            }
            finally
            {
                userCommand.Connection.Close();
            } 
            qiy = Convert.ToString(userCommand.Parameters["@qiy"].Value);
            return qiy;
        }

    建议在存储过程使用output
    return只能返回int类型的

  • 相关阅读:
    Excel导出失败的提示
    C#中将一个引用赋值null的作用
    POJ2112Optimal Milking(二分法+floyd最短+网络流量)
    三年流水账
    OpenCV(C++接口)学习笔记1-图像读取、显示、保存
    thinkphp3.2 代码生成并点击验证码
    8.19! 今天我有18生日,点击阅读或顶部 尾随幸运的一天!生日知识!↓——【Badboy】
    如何系统地学习JavaScript
    HDU 3065 病毒在继续 (AC自己主动机)
    使用Canvas和Paint自己绘制折线图
  • 原文地址:https://www.cnblogs.com/liu-blog/p/3490544.html
Copyright © 2011-2022 走看看