Je suis très vert avec les scripts Batch, mais comme mon client ne permet pas l'utilisation de SSIS, c'est le seul outil auquel je peux me tourner maintenant ...Comment appeler une procédure stockée sur chacun des fichiers d'un répertoire en tant que paramètre?
J'ai un dossier de fichiers plats, et je veux appeler une procédure stockée sur chaque fichier.
Je peux parcourir les fichiers, et je peux appeler sqlcmd, mais je n'arrive pas à comprendre comment passer le nom du fichier à la procédure stockée.
Voici ce que j'ai:
pushd D:\test
for /F "delims=" %%i IN ('dir /b') do sqlcmd -S servername -U username -P pword -Q "EXEC db.schema.sp $(the_filename)" -v the_filename = %%i
popd
Mais je reçois une erreur: syntaxe incorrecte près de '%'
Quelle est la syntaxe correcte?
Supprimez les espaces autour de '=', voir les exemples à la fin de [la page de documentation] (https://msdn.microsoft.com/en-us/library/ms162773.aspx): '-v the_filename =" %% i "' – wOxxOm
@wOxxOm Faire ce changement ne s'est pas débarrassé de l'erreur de syntaxe malheureusement. – confusedKid