sql - 使用多个参数存储存储过程结果
问题描述
我有两个接收多个参数的存储过程。
usp_stored_proc1
它在存储过程结束时返回一个唯一标识符:SELECT column1
usp_stored_proc2
应该column1
从usp_stored_proc1
这是我的代码:
EXEC usp_stored_proc1 'Test1', 'Para1', 'Para2'
EXEC usp_stored_proc2 SELECT column1, 'Para3', 'Para4'
这是我尝试将其usp_stored_proc1
作为参数传递:
EXEC usp_stored_proc2 usp_stored_proc1, 'Test1', 'Para1', 'Para2', 'Para3', 'Para4'
但失败了。
解决方案
OUTPUT
正如@GordonLinoff 在评论中所说,您可以像这样在存储过程中使用参数:
CREATE PROCEDURE usp_stored_proc1
@FirstParam NVARCHAR(50),
--rest of parameters
@Column1 UNIQUEIDENTIFIER OUTPUT
AS
BEGIN
SET NOCOUNT ON;
--some stuff with input parameters
SET @Column1 = NEWID()
END
并执行这样的存储过程:
DECLARE @Column1 UNIQUEIDENTIFIER
EXEC [dbo].usp_stored_proc1 'test', @Column1 OUTPUT
EXEC [dbo].usp_stored_proc2 @Column1,'param1'
推荐阅读
- python - 使用 python 3.7 创建 pipenv 虚拟环境时出错
- sql - 如何根据学生的电话类型优先级仅选择一行
- java - 创建一个交互式程序,要求用户提供一个字符串、一个字符、一个整数和一个浮点值。答案打印在不同的行上
- python - 如何用另一个数据帧中的元素填补一个 Pandas 数据帧中缺失的空白
- node.js - Discordjs 列出我所在的所有公会
- python - 遍历每个不和谐频道,并查找某个频道是否存在 discord.py
- ios - 最大限度地减少来自 Google Cloud 的延迟流式视频
- python - 从教程中实现玩具代码的问题
- kubernetes-helm - 使用节点选择器舵图将 pod 分配到特定节点池
- reactjs - 使用reactjs删除mongodb中的项目不起作用