存储过程的输入输出

 


二、创建一个有输入、输出、返回值参数的存储过程:

create proc proc_out @uid int,@output varchar(200) output

as

--select结果集

select * from test where uid>@uid


--对输出参数进行赋值

set @output=’记录总数:’+convert(varchar(10),(select count(*) from test))

--使用return,给存储过程一个返回值。

return 200;

go


 

 

 

 

SqlParameter sp=comm.Parameters.Add("@myid",SqlDbType.Int); 
 sp.Value=10;//对输入参数赋值

 

  comm.CommandType=CommandType.StoredProcedure;

    //传递一个输入参数,需赋值
    SqlParameter sp=comm.Parameters.Add("@uid",SqlDbType.Int);
    sp.Value=10;

    //定义一个输出参数,不需赋值。Direction用来描述参数的类型
    //Direction默认为输入参数,还有输出参数和返回值型。
    sp=comm.Parameters.Add("@output",SqlDbType.VarChar,50);
    sp.Direction=ParameterDirection.Output;

    //定义过程的返回值参数,过程执行完之后,将把过程的返回值赋值给名为myreturn的Paremeters赋值。
    sp=comm.Parameters.Add("myreturn",SqlDbType.Int);
    sp.Direction=ParameterDirection.ReturnValue;
   
    //使用SqlDataAdapter将自动完成数据库的打开和关闭过程,并执行相应t-sql语句或存储过程
    //如果存储过程只是执行相关操作,如级联删除或更新,使用SqlCommand的execute方法即可。
    SqlDataAdapter da=new SqlDataAdapter(comm);
    DataSet ds=new DataSet();
    da.Fill(ds);
   
   
    //在执行完存储过程之后,可得到输出参数 
    string myout=comm.Parameters["@output"].Value.ToString();
   
    //打印输出参数:
    Response.Write("打印输出参数:"+myout);

    //打印存储过程返回值
    myout=comm.Parameters["myreturn"].Value.ToString();
    Response.Write("存储过程返回值:"+myout);

    this.DataGrid1.DataSource=ds;
    this.DataGrid1.DataBind();


   }

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值