我在这里遇到问题,我在stackoverflow中搜索但仍未找到最佳方式
我有一个像这样的存储过程(SP)
DECLARE @table NVARCHAR(max),@ SQLQuery NVARCHAR(max) SET @table = @meta +' _prize4winner'
SET @SQLQuery ='如果存在(从[dbo]中选择*。' + @table +'其中idCampaignLog =''' +转换(nvarchar,@ ID)+''')exec InsertC2CWinner'''' + convert(nvarchar,@ meta)+''',''' + convert(nvarchar,@ ID)+'&#39 ;',null否则选择''你输了'作为winStatus'
执行SP_EXECUTESQL @SQLQuery
如果我想要输出,如果存在,那么
需要帮助设置输出的方式和位置'你赢了'别的'你失去了' THX
答案 0 :(得分:0)
一般语法是这样的
DECLARE @retval int
DECLARE @sSQL nvarchar(500);
DECLARE @ParmDefinition nvarchar(500);
DECLARE @tablename nvarchar(50)
SELECT @tablename = N'products'
SELECT @sSQL = N'SELECT @retvalOUT = MAX(ID) FROM ' + @tablename;
SET @ParmDefinition = N'@retvalOUT int OUTPUT';
EXEC sp_executesql @sSQL, @ParmDefinition, @retvalOUT=@retval OUTPUT;
SELECT @retval;