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

 MySQL Discussion :

Lancer une requête via un fichier BAT


Sujet :

MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Octobre 2006
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 19
    Par défaut Lancer une requête via un fichier BAT
    Bonjour,

    J'essaie de lancer une requête mysql via un fichier BAT et je n'y arrive pas...

    Voici comment je procède :

    1. J'ai créé un fichier "MaRequete.txt" qui contient :

    use mabase;
    select count(*) as NbArticles from articles

    2. J'ai créé un fichier "Lancement.BAT" qui contient :

    mysql -u root -pmonpassword < D:\MaRequete.txt > D:\Result.txt

    Si je lance une fenêtre DOS et que je saisis directement dedans la ligne de commande ci-dessus, je n'ai aucun problème, mon fichier "Result.txt" est bien créé et contient bien le nombre d'articles de ma base.

    Mais si je lance le fichier "Lancement.BAT", le fichier "Result.txt" est bien créé mais il est vide.
    J'ai ajouté une instruction "pause" dans mon fichier BAT pour voir ce qui se passait, et je constate que l'erreur suivante apparaît :

    ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)


    C'est donc manifestement un problème de droits, bien que je ne comprenne pas comment l'utilisateur peut être différent entre le fait de lancer le BAT ou d'indiquer la même instruction en ligne de commande...

    Mais ce qui est encore plus étrange, c'est que mon compte root a bien tous les droits sur ma base de données :

    SHOW GRANTS FOR root@localhost;
    =>
    | GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD 'xxxxxxx' WITH GRANT OPTION |


    Merci pour votre aide.

    Cordialement,

    Delphine

  2. #2
    Membre averti
    Inscrit en
    Octobre 2006
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 19
    Par défaut
    J'ai oublié de préciser que je suis en mysql 5.0.21...

  3. #3
    Membre Expert
    Homme Profil pro
    Développeur C++
    Inscrit en
    Avril 2012
    Messages
    771
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2012
    Messages : 771
    Par défaut
    Bonjour,

    le serveur MySQL se trouve t'il sur ta machine ou tu y accède via un client ?

  4. #4
    Membre averti
    Inscrit en
    Octobre 2006
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 19
    Par défaut
    Bonsoir,

    Oui, il se trouve sur ma machine qui est un serveur sous windows server 2003 R2.

    Cordialement,

    Delphine

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2011
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2011
    Messages : 74
    Par défaut
    Tu précises bien ta base de données dans ta connexion ?

  6. #6
    Membre averti
    Inscrit en
    Octobre 2006
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 19
    Par défaut
    Bonjour,

    Oui, j'indique le nom de ma base de données dans le fichier "MaRequete.txt" :

    use mabase;
    select count(*) as NbArticles from articles

    Mais j'ai essayé aussi de l'indiquer dans la ligne de commande (en l'enlevant de mon fichier texte dans ce cas), via :

    mysql mabase -u root -pmonpassword < D:\MaRequete.txt > D:\Result.txt

    mais j'obtiens toujours le même phénomène...

    Merci pour votre aide.

    Delphine

Discussions similaires

  1. Exécuter une requête via fichier externe
    Par Benititi dans le forum Débuter
    Réponses: 6
    Dernier message: 12/02/2014, 21h40
  2. Lancer une macro depuis un fichier .bat
    Par duflo dans le forum ImageJ
    Réponses: 2
    Dernier message: 05/07/2013, 02h58
  3. Réponses: 3
    Dernier message: 08/06/2008, 21h08
  4. Réponses: 4
    Dernier message: 14/01/2008, 08h42
  5. lancer un vbs via un fichier bat sous windows98
    Par olaxius dans le forum VBScript
    Réponses: 5
    Dernier message: 07/12/2006, 11h54

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