ASP.NET调用存储过程并接收存储过程返回值

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-01 11:14 点击:

 

假设表结构

Create Table Table_1

(

tid int identity(1,1),

number int

)

1.调用无参无返回值的存储过程

假设存储过程如下:

Create PROC proc_1

AS

Insert Table_1(number) Values(100)

GO

 

调用方法:

public static void exec_proc_1()

{

SqlCommand cmd = new SqlCommand("proc_1", con);//proc_1为存储过程名,con为已经建立好的连接

cmd.CommandType = CommandType.StoredProcedure;//设置执行类型为执行存储过程

cmd.ExecuteNonQuery();

}

 

2.调用有参有返回值的存储过程

假设存储过程如下:

Create PROC proc_2

@result int output,//要返回的参数

@number int,

@tid int

AS

Update Table_1 Set number=number+@number Where tid=@tid

Select @result=number From Table_1

GO

 

调用方法:

public static int exec_proc_2(int number, int tid)

{

SqlCommand cmd = new SqlCommand("proc_2", con);//同上

cmd.CommandType = CommandType.StoredProcedure;//同上

cmd.Parameters.Add(new SqlParameter("@result", SqlDbType.Int));//添加一个名为@result的参数,数据类型为SqlDbType.Int

cmd.Parameters["@result"].Direction = ParameterDirection.Output;//将@result参数设置成为接收输出参数

cmd.Parameters.AddWithValue("@number", number);

cmd.Parameters.AddWithValue("@tid", tid);           

cmd.ExecuteNonQuery();

int result = (int)cmd.Parameters["@result"].Value;//将输出的Object数据转换成int类型

return result;

}

 

3.调用返回一张表的存储过程并接收

假设存储过程如下

Create PROC proc_3

AS

Select * From Table_1--查询一张表

GO

 

调用方法:

public static DataTable exec_proc_3()

{

SqlCommand cmd = new SqlCommand("proc_3", con);//同上

cmd.CommandType = CommandType.StoredProcedure;//同上

SqlDataAdapter da = new SqlDataAdapter(cmd);//用SqlDataAdapter执行

DataTable table = new DataTable();//创建一张表

da.Fill(table);//填充表

return table;

}

 

摘自:小峰的博客

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • 浅析.NET下XML数据访问新机制
      • asp.net 面试+笔试题目第1/2页
      • C# 邮件地址是否合法的验证
      • C#高级编程:数据库连接[1]
      • asp.net 设置GridView的选中行的实现代码
      • 经典C++程序1
      • IIS 自动回收导致后台定时器失效的问题解决
      • ASP.NET GridView列表代码示例
      • 微软ASP.NET站点部署指南(3):使用Web.Config文件的Transforma
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1