Bonjour,
Lorsque je lance une requête sql depuis mon bat, je n'arrive pas é récupérer le résultats dans une variable.
Avez-vous une solution.
Merci d'avance.
La fenêtre se ferme toute seul en moins d'une seconde :
Si je met sur une seul ligne le résultat s'affiche mais la variable %a% renvoi rien:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 for /f %%a in ('sqlcmd -S NOMSERVEUR -d MABASE -U MONID -P MONPW -Q "SELECT COUNT(ARKTCODART) FROM ARTICLE"') do set ColumnVar=%%a echo %ColumnVar% pause
Autre test qui fonctionne vers un fichier txt : Avec la requête dans un fichier *.sql
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 for /f %%a in ('sqlcmd -S NOMSERVEUR -d MABASE -U MONID -P MONPW -Q "SELECT COUNT(ARKTCODART) FROM ARTICLE WHERE ARKTSOC ='100'"') do echo %%a ARTICLES echo %a%
Le fichier SQLQuery1.sql :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 set MonFichier=C:\MyFolder\MyOutput.txt set Provider=-S NOMSERVEUR -d MABASE -U MONID -P MONPW -i C:\MyFolder\SQLQuery1.sql -o "%MonFichier%" sqlcmd %Provider% pause
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT COUNT([ARKTCODART]) FROM [TEST_V15].[dbo].[ARTICLE] GO
Partager