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

PostgreSQL Discussion :

Exporter les données dans le bon ordre


Sujet :

PostgreSQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 16
    Par défaut Exporter les données dans le bon ordre
    Bonjour,

    Je souhaiterai faire un backup de ma BDD (juste les data) en mettant les tables dans le bon ordre.
    Je m'explique : si je fais un export avec phppgadmin (ou avec pg_dmp.exe), puis que je vide ma base, et importe le fichier créé lors de mes manips d'export, j'ai des erreurs de "violates foreign key constraint".

    Je voudrais donc exporter automatiquement les tables dans "le bon ordre" en respectant les contraintes.

    J'ose imaginer qu'il y a une solution, car modifier les .sql à la main c'est long ... mais surtout je ne sais pas quels mots clés rechercher en gros...

    Voilà merci si quelqu'un peut m'éclairer.

    a+

  2. #2
    Membre éprouvé Avatar de kain_tn
    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 862
    Par défaut
    En principe, en utilisant pg_dump ou pg_restore, tu ne devrais pas avoir de problème particulier. Tu peux toujours jouer avec les différentes options...

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 16
    Par défaut
    Citation Envoyé par kain_tn Voir le message
    En principe, en utilisant pg_dump ou pg_restore, tu ne devrais pas avoir de problème particulier. Tu peux toujours jouer avec les différentes options...
    Justement pg_dump exporte les tables par ordre alphabétique.
    Si la table "A" possède des clés étrangères situées dans la table "B", j'ai des erreurs.
    Je vais voir du côté de pg_restore.
    (Avant je restaurai via phppgadmin ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "[...]psql.exe" -e -U myuser -d mybase -f data.sql
    )

    EDIT :
    Après avoir essayé ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    "%PG_DIR%pg_dump.exe" -U myuser -Ft mybase > base.tar
     
    "%PG_DIR%pg_restore.exe" -U myuser -d mybase base.tar
    Toujours la même chose.

    En regardant les options je ne trouve pas mon bonheur. Il doit y avoir une notion que je n'ai pas comprise ou complètement manquée !?
    Ma façon de gérer les clé étrangère n'est peut-être pas bonne ?

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Par défaut
    L'option -L de pg_restore permet de spécifier un ordre alternatif.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 16
    Par défaut
    Citation Envoyé par estofilo Voir le message
    L'option -L de pg_restore permet de spécifier un ordre alternatif.
    Merci. Je pourrai creuser cette piste, mais n'est-il pas possible d'ordonnancer lors du dump plutôt que lors du restore ?

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Par défaut
    Je pense que pg_dump adopte un algorithme différent suivant qu'on spécifie l'option -a (--data-only) ou pas.
    Au début de la discussion tu dis que tu veux sauvegarder uniquement les données (donc sous-entendu par les définitions des tables et les contraintes d'intégrité associées) donc j'imaginerais que c'est avec l'option -a.
    Mais plus loin la commande pg_dump que tu cites n'a pas cette option.
    Peux-tu préciser ça de manière explicite? -a ou pas -a ?

Discussions similaires

  1. [MySQL] Récupération de données dans le bon ordre
    Par Lotus355 dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 27/12/2013, 14h01
  2. [1.x] comment exporter les données dans un fichier excell
    Par farhaenis dans le forum Symfony
    Réponses: 2
    Dernier message: 29/07/2011, 18h12
  3. [Débutant] exporter les donneés dans un fichier excel
    Par gueloude dans le forum MATLAB
    Réponses: 1
    Dernier message: 05/01/2011, 11h26
  4. Exporter les données dans un fichier excel
    Par merlinerick dans le forum C
    Réponses: 4
    Dernier message: 13/08/2008, 22h52
  5. Trier les données dans 1 tableau par ordre décroissant
    Par Blunet dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 23/11/2005, 09h56

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