Vous n'êtes pas identifié(e).

#1 Re : Général » Différence d'export de deux tables avec pg_dump » 13/03/2014 09:04:14

Bonjour,
merci de votre réponse
C'est effectivement mon erreur.

#2 Général » Différence d'export de deux tables avec pg_dump » 28/02/2014 12:26:13

Nicolas GRANIER
Réponses : 2

Bonjour à tous,

J'ai constaté lors de la génération du fichier sql de sauvegarde avec pg_dump, une différence de syntaxe/logique dans mon export entre deux tables. Je m'explique

TABLE 1 :

CREATE TABLE anciennetable (
    identifiant bigint NOT NULL )
 
CREATE SEQUENCE anciennetable_identifiant_seq
    START WITH 1
    INCREMENT BY 1
    NO MINVALUE
    NO MAXVALUE
    CACHE 1;


ALTER SEQUENCE anciennetable_identifiant_seq OWNED BY anciennetable.identifiant;

TABLE 2

CREATE TABLE nouvelletable (
    identifiant DEFAULT nextval('nouvelletable_identifiant_seq'::regclass) NOT NULL )

Lors de la restauration de la deuxième table j'ai un message d'erreur car la requête de création de la séquence n'a pas été créée.
Après quelques investigations, j'ai trouvé une différence dans la méthode de création des tables

J'ai créé la table 1 comme ceci :

CREATE TABLE anciennetable ( identifiant bigint SERIAL )

et la table 2 comme ceci :

CREATE TABLE nouvelletable (   identifiant DEFAULT nextval('nouvelletable_identifiant_seq'::regclass)

J'en conclu que le fait de ne pas avoir utilisé la "méthode" SERIAL me pose maintenant problème lors de mes exports.
J'ai tenté de trouver une solution en passant par pg_catalog mais sans succès.
Merci de m'apporter vos éclairages

ps : en passant dans le pg_dump le paramètre --table "sequence_table2" ça fonctionne mais ça ne me satisfait pas du tout !

Pied de page des forums

Propulsé par FluxBB