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

C++Builder Discussion :

Sauvegarde de base MYSQL avec Builder


Sujet :

C++Builder

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 8
    Par défaut Sauvegarde de base MYSQL avec Builder
    Bon, je suis de retour... =)

    J'ai donc réussi a remonter et afficher tous les champs de ma base.

    Mais mon problème ne s'arrête pas la...

    Il faudrait que je créé une solution de "sauvegarde" de ma base, par exemple a l'aide d'un DUMP, et que je puisse ENSUITE la restaurer, en cas de problème.

    Quelle est le type de requete a utiliser pour la restauration, et comment enregistrer mes "fichiers de sauvegarde" (au format .sql???...) sous un nom contenant la date du jour (par exemple 130508.sql ...)

    Je patauge un peu dans la semoule...

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 8
    Par défaut
    En réfléchissant et me baladant un peu sur internet, je me suis orienté vers une fonction 'simple' qui prend le contenu d une table, et l'envoie dans un fichier texte.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     int lenght;  //Longeur de la requete
    char *requet;  //la requete en elle meme
    requet =  "SELECT * FROM `stations` INTO OUTFILE 'C:\\save2.txt';"; 
    lenght = strlen(requet);
     
           if (!mysql_real_query(mySQL,requet,lenght))
           {
           LblSave->Caption = "ERREUR SAUVEGARDE";
           }
           else
           {
           LblSave->Caption = "Save OK";
           }
    Et ca me retourne SAVE OK sur mon programme, mais aucun fichier texte a la racine de mon disque.

    Je précise que j'ai testé la requête en elle même dans easyphp, et elle fonctionne, mon fichier se crée bien a l'exécution.


  3. #3
    say
    say est déconnecté
    Membre Expert
    Avatar de say
    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 176
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 176
    Par défaut
    un problème de droit d'accès?

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 8
    Par défaut
    Un problème de droits d'accès????...
    Peux préciser de QUELS droits il s'agit (privilèges de la base, droits d'écriture sur le disque...)

    A noter que j'ai testé avec une requête "simple"
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from 'stations'
    et mon mysql_real_connect retourne bien 0, ce qui veut dire qu'il effectue bien la requête...

    Je pense qu'il y a un souci dans la syntaxe de ma requête, ou, comme tu me dis, un probleme de droits, mais où...

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 8
    Par défaut
    J AI REUSSI =)

    J'ai reformulé ma requete de la façon suivante, et ca marche, j'arrive a générer mon fichier contenant ma base.

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    requet = "SELECT * FROM STATIONS INTO OUTFILE 'D:\\SAUVE\SAUVE.txt'";

    Mais par contre, il me l'enregistre a la racine du disque D: sous le nom SAUVESAUVE.txt, mais pas dans mon repertoire SAUVE créé a l'avance...

  6. #6
    Membre confirmé Avatar de Couz02
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    232
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 232
    Par défaut
    T'as oublié le double "\\"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    requet = "SELECT * FROM STATIONS INTO OUTFILE 'D:\\SAUVE\\SAUVE.txt'";
    Ton sujet m'intéresse. Tu arrives à te connecter à une base mysql distante ?

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 8
    Par défaut
    Et bien avec le double \\ ca ne marche pas, le mysql_real_query me retourne 1... et il m enregistre le fichier sous la forme D:\\SAUVESTATIONS.txt si je passe D:\\SAUVE\\STATIONS.txt en paramètre de ma requête...


    Et pour répondre a ta question, j'arrive en lançant mon programme sur une machine quelconque de mon réseau local, a accéder a la base stockée sur ma machine.

    Ca marche parfaitement, je remonte toutes mes valeurs.

  8. #8
    Membre confirmé Avatar de Couz02
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    232
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 232
    Par défaut
    Ah ok en local je comprend mieux, moi j'essaie à distance mais mon hébergeur bloque les connexions entrantes extérieures

Discussions similaires

  1. création de base mySQL avec python
    Par preacher_man dans le forum Bibliothèques tierces
    Réponses: 7
    Dernier message: 23/06/2006, 19h38
  2. Erreur connection à une base Mysql avec c#
    Par zidenne dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 24/04/2006, 14h58
  3. recuperer des mails stocker dans base MySQL avec Outlook
    Par freddy92110 dans le forum Outlook
    Réponses: 1
    Dernier message: 06/11/2005, 19h26
  4. Problème de base MySQL avec installation de script
    Par JoN28fr dans le forum Installation
    Réponses: 3
    Dernier message: 27/10/2005, 18h34
  5. Ouverture d'une base Acces avec Builder 6 pro
    Par tryonyco dans le forum C++Builder
    Réponses: 7
    Dernier message: 30/08/2005, 15h45

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