第47章、调用输入参数存储过程

 

【知识要点】
  (1)SQL SERVER创建“输入参数存储过程”
  (2)C#调用输入参数存储过程

【问题提出】
  存储过程的好处我们早已知道了,那么如何使用C#调用输入参数存储过程呢?

  

【在线指导】

  SQL SERVER数据库创建存储过程回顾:第37章、创建输入参数存储过程

  C#调用输入参数存储过程就没有“无参数存储过程”那么简单了,不过也不难,我们一起来学习一下,返回结果填充到GridView即可。   

创建存储过程语句:
  CREATE PROCEDURE prcClientByCode(@ClientCode CHAR(8))
  AS
  SELECT vClientName,cMobile,vAddress FROM Client WHERE cClientCode=@ClientCode
-------------------------------------------------------------------------------------------
调用存储过程语句:
  EXEC prcClient '00000001'

1、设计界面

  (1)打开Hello项目,单击“启动页>最近使用的项目>Hello”。

  (2)在“解决方案资源管理器”中添加“SqlProcedureByCode.aspx”页面。

  (3)从工具箱中拖1个按钮Button到SqlProcedureByCode.aspx页面,控件“调用输入参数存储过程”按钮:ID属性为“btnProcedure”;

            

  (4)从工具箱中拖1个GridView到SqlProcedureByCode.aspx页面,GridView的ID属性为“gvClient”;     注:GridView的样式设置与列的设置由于我们前面章节多次重复,不再赘述。 

  

2、添加代码

  (1)双击页面上的“调用输入参数存储过程”按钮。

  我们在btnProcedure_Click()中间输入:

//连接SQL SERVER
string ConnSqlServer = "Server=www.woshicainiao.net;Database=SuperMarket;User ID=sa;Pwd=xxx";
SqlConnection Conn = new SqlConnection(ConnSqlServer);

//打开
Conn.Open();

string ClientCode=tbClientCode.Text.Trim();

//声明SqlCommand对象
SqlCommand Comm=new SqlCommand();
Comm.Connection = Conn;
Comm.CommandType = CommandType.StoredProcedure;
Comm.CommandText = "prcClientByCode ";

//声明SqlParameter对象
SqlParameter Para= new SqlParameter("@ClientCode",SqlDbType.Char,8);
Para.Direction = ParameterDirection.Input;
Para.Value = ClientCode;

//为Comm添加参数Para
Comm.Parameters.Add(Para);

//声明SqlDataAdapter对象
SqlDataAdapter Adapter = new SqlDataAdapter(Comm);
DataSet Ds = new DataSet();
Adapter.Fill(Ds, "Client");

//执行命令
gvClient.DataSource = Ds.Tables["Client"];
gvClient.DataBind();

//关闭数据库
Conn.Close();

  讲解:
  我们着重学习一下:

//声明SqlCommand对象
SqlCommand Comm=new SqlCommand();
Comm.Connection = Conn;
Comm.CommandType = CommandType.StoredProcedure;
Comm.CommandText = "prcClientByCode ";

  SqlCommand我们并不陌生,其Connection属性为活动的连接;CommandType默认是SQL语句,在此指定为存储过程;CommandText属性为存储过程名称。

//声明SqlParameter对象
SqlParameter Para= new SqlParameter("@ClientCode",SqlDbType.Char,8);
Para.Direction = ParameterDirection.Input;
Para.Value = ClientCode;

  SqlParameter参数对象我们是第一次见,Direction属性为输入参数;其Value属性为文本框的内容。

//为Comm添加参数Para
Comm.Parameters.Add(Para);
  为Comm添加参数对象Para

//声明SqlDataAdapter对象
SqlDataAdapter Adapter = new SqlDataAdapter(Comm);
  为SqlDataAdapter构造函数添加Comm对象。

  再后面的代码就和以前一样了。

  

  (2)输入编号:“00000001”,单击“调用输入参数存储过程”按钮。

  

  当然了,你可以输入别的客户编号查询一下试试。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蒋会全

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值