SQL SERVER里面如何在存储过程里面获取另一个存储过程所返回的表的数据

SQL SERVER里面如何在存储过程里面获取另一个存储过程所返回的表的数据,第1张

第一个存储过程(被调用的)里定义OUTPUT参数,如:

Create Procedure 存储过程1

@参数1 数据类型

@参数2 数据类型 output

AS

存储过程语句

第二个存储过程:

Create

AS

Declare @本地参数1

Declare @本地参数2

EXEC 存储过程1 @本地参数1,@本地参数2 OUTPUT

--这样@本地参数2就可以直接使用了,带回来的是存储过程1中的@参数2

具体语法如下:

Set parameter = commandCreateParameter (Name, Type, Direction, Size, Value)

·Name 可选,字符串,代表 Parameter 对象名称。

·Type 可选,长整型值,指定 Parameter 对象数据类型。

·Direction 可选,长整型值,指定 Parameter 对象类型。

·Size 可选,长整型值,指定参数值最大长度(以字符或字节数为单位)。

·Value 可选,变体型,指定 Parameter 对象值。

这种方法与上面一种方法的分别主要在于,追加参数的方法在向存储过程传递参数时,这种方法首先通过CreateParameter方法为存储过程创建参数,然后通过Append方法将创建的参数追加到Parameters集合中去。

仍然以存储过程doc_ProcName的调用为例,关键代码如下:

Dim mRst As ADODBRecordset 'Recordset 对象表示的是来自基本表或命令执行结果的记录全集。

Dim prm As ADODBParameter 'Parameter 对象代表参数或与基于参数化查询或存储过程的Command 对象相关联的参数。

如果返回标量值的话,例如文章的个数,可以使用储存过程的输出(OUTPUT)参数。在定义存储过过程时为参数指定OUTPUT关键字。C#调用存储过程时指定参数SqlParameter对象的Direction属性为Output。

如果是返回多个结果集的话,可以直接在存储过程中使用多个select查询就行。在C#代码中使用SqlDataReader对象的NextResult方法提取下一个结果集。

以上就是关于SQL SERVER里面如何在存储过程里面获取另一个存储过程所返回的表的数据全部的内容,包括:SQL SERVER里面如何在存储过程里面获取另一个存储过程所返回的表的数据、如何调用output存储过程里的参数、Asp.net(C#) 获取 执行sql server 语句/存储过程后的 多个返回值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9315345.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存