存储过程返回表

通过调用存储过程不但能返回值,还能返回一张表,下面的代码中实现了创建一个临时表,并返回这个表(支持多个)的用法。希望对大家有帮助,
  Examda提示: 这里还涉及到一个临时表的创建,什么是sql server真正的临时表,并发不冲突的临时表,要让系统建立在tempdb中才是,sql server会自动管理这些临时表
  c#代码如下
  DataSet ds = new DataSet();
  System.Data.OleDb.OleDbCommand cmd = m_TdlyDataAccess.DBConnection.CreateCommand();
  cmd.CommandText = "prcTest";
  cmd.CommandType = CommandType.StoredProcedure;
  System.Data.OleDb.OleDbDataAdapter dap = new System.Data.OleDb.OleDbDataAdapter(cmd);
  dap.Fill(ds);
  存储过程如下
  SET QUOTED_IDENTIFIER ON
  GO
  SET ANSI_NULLS ON
  GO
  CREATE PROCEDURE [dbo].[prcTest]
  AS
  begin
  CREATE TABLE #t(x INT PRIMARY KEY,y int default 0,z int default 0)
  INSERT INTO #t VALUES (99,0,0)
  INSERT INTO #t VALUES (239,0,0)
  INSERT INTO #t VALUES (939,0,0)
  select * from #t
  drop table #t
  end
  GO
  SET QUOTED_IDENTIFIER OFF
  GO
  SET ANSI_NULLS ON
  GO

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值