SQL Server 2012可编程性新特性_4_WITH RESULT SETS

原创 2012年03月27日 11:04:23

在之前的版本基础上,2012新增了可以使用 WITH RESULT SETS 选项定义结果集的元数据的功能。我们知道,存储过程中返回结果集是很常见的,但如果想要控制部分返回结果集的字段名和数据类型将会是很困难的。SQL Server 2012引入一个新特性WITH RESULT SETS,可以重新定义存储过程中返回结果的字段名和数据类型。这会使得向拥有特定字段名和数据类型的临时表的结果集中插入记录将变得非常容易,并且不需要依赖存储过程返回了哪些内容。直接看下面示例:

 

原始表的定义与存储过程的定义如下:



下面是过去执行Stored Procedure与当前定义单个结果集后再执行的结果对比图,可以看出返回结果的字段名和数据类型均有重新定义:

 

修改Stored Procedure,增加一个结果集:

使用 WITH RESULT SETS 子句执行该过程并指定两个结果集定义与过去执行结果的对比图:

 

通过以上的展示,相信您可以领略到SQL Server 2012的结果集新特性WITH RESULT SETS的具体如何使用,在日后的工作当中,或许需要这一特性来简化我们的工作。最后,请注意的一点是,INSERT…EXEC语句中不能指定WITH RESULT SETS选项。

有关EXECUTE更详细的信息,可参考:http://msdn.microsoft.com/zh-cn/library/ms188332(v=SQL.110).aspx

 

SQL Server2012新特性WITH RESULT SETS

【IT168 专稿】存储过程中返回结果集是很常见的,但如果想要控制部分返回结果集的字段名和数据类型将会是很困难的。SQL Server 2012(版本代号为Denali)引入一个新特性WITH RES...
  • jqrsdsy
  • jqrsdsy
  • 2014年09月19日 14:45
  • 846

SQL Server 2012 新功能一览

微软于3月7日正式发布SQL Server 2012(以后简称SQL2012)。SQL2012发布之前,有幸公费参加2011微软技术大会(北京),当时不是称为SQL Server 2012,而是其前身...
  • Burgess_Liu
  • Burgess_Liu
  • 2012年03月23日 09:10
  • 8437

SQL Server 2012可编程性新特性_5_sp_describe_first_result_set

过去,如果要确定查询或存储过程的返回结果类型,需要使用SET FMTONLY命令。使用该命令可以在不需要实际执行查询的情况下预览返回结果的列信息。可惜的是,返回的信息仅仅局限于列的定义,而如果只要先前...
  • Burgess_Liu
  • Burgess_Liu
  • 2012年03月27日 12:59
  • 1575

SQL Server 2012可编程性新特性_1_Sequence

SQL Server 2012可编程性新增了一些新的特性,这些特性使得我们的日常工作变得更加简单,下面一起来学习一下: 序列(Sequence)是一种用户定义的架构绑定对象,它根据创建该序列时采用的规...
  • Burgess_Liu
  • Burgess_Liu
  • 2012年03月26日 16:14
  • 1314

SQL Server 2012可编程性新特性_2_OFFSET

通过 OFFSET-FETCH 子句,您可以从结果集中仅提取某个时间范围或某一页的结果。OFFSET-FETCH 只能与 ORDER BY 子句一起使用。 如下,从排序的结果集中跳过前2行并返回接下来...
  • Burgess_Liu
  • Burgess_Liu
  • 2012年03月26日 21:44
  • 1044

SQL Server 2012可编程性新特性_3_THROW

T-SQL从2005年就开始支持TRY-CATCH ,但直到2012才有THROW。THROW不带参数,其用法与C#和VB中catch块中的throw类似。也就是说,它会重新抛出异常,而不会丢失当时捕...
  • Burgess_Liu
  • Burgess_Liu
  • 2012年03月27日 08:58
  • 1123

SQL Server 2012可编程性新特性_7_分析函数

SQL Server 2012 支持以下分析函数:CUME_DIST、PERCENT_RANK、FIRST_VALUE、LAST_VALUE、LAG、LEAD、PERCENTILE_CONT、PERC...
  • Burgess_Liu
  • Burgess_Liu
  • 2012年03月28日 14:03
  • 2174

功能强大的全新 T-SQL 语法极大地提升了 SQL Server 的可编程性

发布日期: 11/15/2004 | 更新日期: 11/15/2004Itzik Ben-Gan 本文是根据 Microsoft SQL Server 代号“Yukon”的 Beta 1 编写的,此处...
  • hiyaolee
  • hiyaolee
  • 2005年12月29日 20:00
  • 1163

SQL SERVER 2008 GROUP BY GROUPING SETS

【SQL SERVER 2008 GROUP BY GROUPING SETS】 使用 GROUPING SETS 的 GROUP BY 子句可以生成一个等效于由多个简单 GROUP BY 子句的 ...
  • kk185800961
  • kk185800961
  • 2012年11月17日 14:37
  • 1483

SQL SERVER中GROUPING SETS,CUBE,ROLLUP

用实例解释SQL SERVER中GROUPING SETS,CUBE,ROLLUP
  • lihui_830501
  • lihui_830501
  • 2014年03月25日 00:42
  • 1809
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SQL Server 2012可编程性新特性_4_WITH RESULT SETS
举报原因:
原因补充:

(最多只允许输入30个字)