特色栏目

ASP源码

PHP源码

.NET源码

JSP源码

游戏频道
专题合集
关闭菜单
首页> 数据库教程> 调用存储过程并且使用返回值的基本方法

调用存储过程并且使用返回值的基本方法

时间:2009-05-31 00:08:21 作者:互联网
一直没有找到一种好的方法来引用有返回值的存储过程的方法,使我在添加数据中走了不少的弯路,最近,在查阅了大量的资料之后,终于在微软的一个实例中找到了一种良好的方法。
首先编写好一有返回值的存储过程
create procedure proc_name
   @para1 nchar(20),    --输入参数
   @para2 int = null out --输出参数,供程序使用
as
   set nocount on
   if ( not exists (select * from employee where em_name=@para1))
   begin
       insert into employee(name) values(@para1)  
       select @para2=@@identity      --返回添加记录的ID
       return 1                                --返回是否成功添加数据
   end
   else
      return 0                               --返回失败
go
然后是调用存储过程的方法
sqlcommand command;
command = new sqlcommand(proc_name,new sqlconnection(connectionstr));
co***nd.paraments.add("@para1"),"name1");  //输入参数,职员姓名
co***nd.paraments.add(new sqlparament("@para2",   //生成一输出参数
Sq***Type.Int;             //参数数据类型
Pa***enterDirection.OutPut,      //输入输出类型
0,
0,
st***g.Emplty,
Da***owVerstion.Default,
null)                 //参数值,输入参数时需提供
);
co***nd.commandtype=commandtype.StoredProcedure;
co***nd.connection.open();
co***nd.executenonQuery();
int pkid=(int)co***nd.Parameters["@para2"].value;  //得到输出参数的值
co***nd.connection.close();
此处是引用输出参数,如果要引用返回值(是否成功添加数据)则只需把ParamenterDirection的类型改为returnvalue;再自己改一个参数名就可以了.
相关文章

相关应用

热门文章

猜你喜欢

返回顶部