l'appel de package SSIS avec des paramètres d'entrée sur la procédure stockée
J'ai des packages SSIS qui s'attend à un paramètre d'entrée de l'ID(entier).
J'ai besoin d'exécuter ce package SSIS à l'aide de la procédure stockée afin que je puisse passer la valeur de l'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
Ai-je besoin de jeter l' @XmlID de caractère? Si je le faisais, j'obtiens une erreur - Option "Set" n'est pas valide.
Vous devez vous connecter pour publier un commentaire.
La syntaxe correcte pour exécuter dtexec avec un paramètre est:
Il semble que vous avez oublié une barre oblique lorsque vous avez spécifié l'option de commande set.