IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

sqlcmd - récupérer le résultat dans une variable


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Juillet 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre (Centre)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : Juillet 2013
    Messages : 13
    Par défaut sqlcmd - récupérer le résultat dans une variable
    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 :

    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
    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
    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%
    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
    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
    Le fichier SQLQuery1.sql :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT COUNT([ARKTCODART])
      FROM [TEST_V15].[dbo].[ARTICLE]
    GO

  2. #2
    Membre confirmé
    Inscrit en
    Septembre 2010
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 130
    Par défaut
    et si tu mets des paranthèse ?:

    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

    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%)

  3. #3
    Membre averti
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Juillet 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre (Centre)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : Juillet 2013
    Messages : 13
    Par défaut
    Merci pour ton aide
    cela marche mais me renvoi que (1
    alors que le requête affiche 3 lignes
    --------------
    23656
    (1

  4. #4
    Membre Expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Par défaut
    Salut,

    Essaye en mettant "delims=" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for /f "delims=" %%a in ('......

Discussions similaires

  1. Récupérer le résultat d'une variable dans un tableau (VBA)
    Par fredplusvar dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 16/03/2014, 18h25
  2. Réponses: 2
    Dernier message: 31/07/2013, 14h53
  3. Récupérer les header dans une variable
    Par alex.hitman dans le forum Langage
    Réponses: 2
    Dernier message: 29/08/2007, 18h18
  4. récupérer contenu fichier dans une variable
    Par kalyparker dans le forum Scripts/Batch
    Réponses: 3
    Dernier message: 02/07/2007, 18h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo