Parameters 具有多个输出参数的tsqlt spyProcedure
关于我的问题,有一篇相关的帖子是关于一个输出参数的,但我找不到一种方法将其应用到我的过程中,因为我的过程有多个输出参数 我想介绍的程序概述如下:Parameters 具有多个输出参数的tsqlt spyProcedure,parameters,output,tsqlt,Parameters,Output,Tsqlt,关于我的问题,有一篇相关的帖子是关于一个输出参数的,但我找不到一种方法将其应用到我的过程中,因为我的过程有多个输出参数 我想介绍的程序概述如下: ALTER PROCEDURE [dbo].[wms_whse_check_serialNumber] @Command Json , @operWarningMessage_notExists exception OUTPUT , @operWarningMessage_notInInventory exception OUTPUT <..
ALTER PROCEDURE [dbo].[wms_whse_check_serialNumber]
@Command Json
, @operWarningMessage_notExists exception OUTPUT
, @operWarningMessage_notInInventory exception OUTPUT
<...>
但是,我想指定这两个输出参数。如果我尝试:
EXEC tSQLt.SpyProcedure @ProcedureName = N'dbo.wms_whse_check_serialNumber',
@CommandToExecute = N'SET @operWarningMessage_notExists = NULL, @operWarningMessage_notInInventory = NULL;';
我得到:(错误)靠近“,”[15,1]{wms\u whse\u check\u serialNumber,1}的语法不正确
我已经对它做了很多修改,并且不能想出一个能够成功的语法。我错过了什么?谢谢 将
设置
替换为选择
,如所示:
EXEC tSQLt.SpyProcedure @ProcedureName = N'dbo.wms_whse_check_serialNumber',
@CommandToExecute = N'SELECT @operWarningMessage_notExists = NULL, @operWarningMessage_notInInventory = NULL;';
说明:
SET
命令一次只能设置一个变量。您可以使用多个SET
语句,或者如上所示,使用SELECT
一次分配多个变量
旁注:
没有什么可以阻止您在上面的@CommandToExecute
参数中使用多个语句,因此这也是一个有效的解决方案:
EXEC tSQLt.SpyProcedure @ProcedureName = N'dbo.wms_whse_check_serialNumber',
@CommandToExecute = N'SET @operWarningMessage_notExists = NULL; SET @operWarningMessage_notInInventory = NULL;';
谢谢你,塞巴斯蒂安!非常感谢tsqlt和您对它的支持!
EXEC tSQLt.SpyProcedure @ProcedureName = N'dbo.wms_whse_check_serialNumber',
@CommandToExecute = N'SET @operWarningMessage_notExists = NULL; SET @operWarningMessage_notInInventory = NULL;';