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 :

problème OUTFILE en mysql


Sujet :

MySQL

  1. #1
    Membre averti
    Inscrit en
    Juillet 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 13
    Par défaut problème OUTFILE en mysql
    salut a tout le monde;

    j'ai un trigger sous mysql qui permet de contrôler l'insertion sur la table t_client et le résultat sauvegarder dans un fichier XML dans le system de fichier de Windows.

    le script de trigger est comme suite:
    -------------------------------------
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    CREATE DEFINER=`root`@`localhost` TRIGGER `ecole`.`Trigger_ecole_t_client_INSERT` AFTER INSERT ON ecole.t_client FOR EACH ROW
    BEGIN
            SELECT CONCAT('<clients>\n',
                    GROUP_CONCAT('    <client>\n','        <n_client>', ecole.t_client.n,'</n_client>\n',
                    '        <nom>' ,ecole.t_client.nom,'</nom>\n',
                    '        <prenom>',ecole.t_client.prenom,'</prenom>\n','    </client>\n' SEPARATOR ''),
                    '</clients>') into OUTFILE 'c:\\CLIENT.xml'
            FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY ''
            FROM ecole.t_client;
        END;
    -------------------------------------

    la description de la table t_client:
    ------------------------------------
    n int(2)
    nom varchar(30)
    prenom varchar(30)
    le résultat CLIENT.xml:
    -----------------------
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    <T_CLIENT>
     
        <client>
     
            <n>1</n>
     
            <nom>nom1</nom>
     
            <prenom>prenom1</prenom>
     
        </client>
     
        <client>
     
            <n>2</n>
     
            <nom>nom2</nom>
     
            <prenom>prenom2</prenom>
     
        </client>
     
        <client>
     
            <n>3</n>
     
            <nom>nom3</nom>
     
            <prenom>prenom3</prenom>
     
        </client>
    </T_CLIENT>
    -----------------------------------------------------


    le problème:
    dés que la première insertion dans la table t_client,le trigger marche très bien,mais la 2ème insertion affiche un message'MySQL Database Error:
    File 'c:\CLIENT.xml' already exists.

    la question:
    comment ajouter des informations au un fichier déjà existe.

    -----------------------------------------------------------------
    j'attende une réponse favorable et merci d'avance à tout le monde. |
    -----------------------------------------------------------------

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonsoir,

    D'après la doc, ce n'est pas possible:

    Le fichier est crée sur le serveur et ne peut y être déjà présent

  3. #3
    Membre averti
    Inscrit en
    Juillet 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 13
    Par défaut
    Merci bcp pour la réponse,
    Est qu'il a une astuce qui permet de résoudre mon problème. Je suis vraiment bloqué.

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 999
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 999
    Billets dans le blog
    6
    Par défaut
    Passer à un SGBDR comme MS SQL Server qui sait faire cela sans problème. Exemple : http://blog.developpez.com/sqlpro/p8...texte-via-sql/

    MS SQL Server existe en version gratuite pour des bases jusqu'à 10 Go (SQL Server Express 2008 R2).

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  5. #5
    Membre averti
    Inscrit en
    Juillet 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 13
    Par défaut
    le client demande le SGBDR mySql.
    et merci bcp mosieur pour la réponse.
    a+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de configuration MySQL Apache
    Par FredMines dans le forum Installation
    Réponses: 4
    Dernier message: 01/07/2005, 11h43
  2. Problème avec Ado, MySQL
    Par sylvain.g dans le forum Bases de données
    Réponses: 2
    Dernier message: 07/06/2005, 10h45
  3. problème démarrage serveur mysql
    Par vbcasimir dans le forum SQL Procédural
    Réponses: 6
    Dernier message: 25/04/2005, 14h14
  4. Problème sous requete MySQL
    Par gavelin dans le forum Langage SQL
    Réponses: 3
    Dernier message: 20/07/2004, 10h36
  5. problème de connection mysql par tcp/ip
    Par leroyphil dans le forum Administration
    Réponses: 5
    Dernier message: 04/09/2003, 18h27

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