gpt4 book ai didi

SQL Server存储过程存储返回值

转载 作者:行者123 更新时间:2023-12-02 10:48:53 25 4
gpt4 key购买 nike

你好,

我的问题是,我在 SQL Server 中有一个存储过程,它返回字段的计数。我想将此存储过程的结果存储在不同存储过程的变量(标量?)中。

sp_My_Other_SP:

CREATE PROCEDURE [dbo].sp_My_Other_SP
@variable int OUTPUT -- The returned count
AS

BEGIN -- SP

SET NOCOUNT ON;

SET @SQL = "SELECT COUNT(*) FROM blah"
EXEC(@SQL)

END -- SP

我目前这样做:

DECLARE @count int

EXEC sp_My_Other_SP @count OUTPUT

然后我就这样使用它

IF (@count > 0)
BEGIN
...
END

但是它返回其他存储过程结果以及主存储过程结果,这是我的 .NET 应用程序中的一个问题。

-----------
NoColName
-----------
14

-----------
MyCol
-----------
abc
cde
efg

(以上是返回结果集的尝试表示)

我想知道是否有一种方法可以将存储过程的结果存储到一个不输出它的变量中。

感谢您的帮助。

最佳答案

您可以将存储过程的结果捕获到临时表中,这样调用存储过程就不会返回它。

create table #temp (id int, val varchar(100))
insert into #temp
exec sp_My_Other_SP @value, @value, @value, @count OUTPUT

关于SQL Server存储过程存储返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1341948/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com