如何在客户端执行存储过程

4 篇文章 0 订阅

写如下的方法来展示如何在客户端调用存储过程

 static void CallProcedure()
        {
            string sql = "up_getStudentNameByNo";
            //using可释放资源(要求资源必须实现IDisposible接口)
            using (SqlConnection con = new SqlConnection("server=.;database=myschool;uid=sa;pwd=sa"))
            {
                SqlCommand cmd = new SqlCommand(sql, con);
                //指定命令类型:执行存储过程
                cmd.CommandType = CommandType.StoredProcedure;

                //向命令对象的参数集合中添加输入参数
                SqlParameter para = new SqlParameter("@no", SqlDbType.Int,12);
                cmd.Parameters.Add(para);
                //向命令对象的参数集合中添加输出参数
                para = new SqlParameter("@name", SqlDbType.VarChar, 30);
                para.Direction = ParameterDirection.Output;
                cmd.Parameters.Add(para);
                //向命令对象的参数集合中添加接收返回代码的参数
                para = new SqlParameter("@ret", SqlDbType.Int);
                para.Direction = ParameterDirection.ReturnValue;
                cmd.Parameters.Add(para);

                con.Open();
                cmd.ExecuteNonQuery();
                Console.WriteLine("学生姓名:" + cmd.Parameters["@name"].Value.ToString());
                Console.WriteLine("返回代码:" + cmd.Parameters["@ret"].Value.ToString());
            }
        }

 

 

总之,可以归结为:

1.创建SqlConnection对象,

2.创建SqlCommand对象,

3.设置:SqlCommand对象.CommandType = CommandType.StoredProcedure;

4.创建SqlParamete对象,例如: para = new SqlParameter("@name", SqlDbType.VarChar, 30);

5. 设置SqlParamete对象的Direction属性:para.Direction = ParameterDirection.Output;

6. 添加SqlParamete的对象到SqlCommand对象的Parameters数组,cmd.Parameters.Add(para); 例如:cmd.Parameters.Add(para);

7.打开SqlConnection对象的Open()

8. 执行cmd.ExecuteNonQuery();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值