我有需要输入参数 ID(整数)的 SSIS 包。我需要使用存储过程执行这个 SSIS 包,以便我可以传递 ID 的值。
DECLARE @Command varchar(1000)
, @PackageLocation varchar(1000)
, @PackageName varchar(1000)
, @XmlID int
SELECT TOP 1 @XmlID = XmlId
FROM dbo.ENROLMatchingXML
WHERE IsProcessed = 0
SET @PackageLocation = 'E:\SSIS\Package'
SET @PackageName = 'Match Names.dtsx'
SET @Command = 'DTEXEC'
+ ' /File "' + @PackageLocation + '\' + @PackageName + '"'
+ ' Set \Package.Variables[user::XMLID].Properties[Value];' + @XmlID
-- print just to show the string @command
print @Command
EXEC xp_cmdshell @Command
我需要将@XmlID 转换为字符吗?如果我这样做了,我会收到一个错误 -选项“设置”无效。