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 :

probleme enregistrement dans base


Sujet :

PostgreSQL

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9
    Points : 5
    Points
    5
    Par défaut probleme enregistrement dans base
    Bonjour,

    je viens de réaliser une restauration de ma base sous postgres 8.0. Je n'ai pas eut de messages d'erreurs lors de cette restauration.Mais quand j'essaie maintenant d'enregistrer des données dans cette base à partir de l'application je n'y arrive pas.Les données ne sont pas enregistrées dans la base.
    Je vous remercie d'avance

  2. #2
    jnore
    Invité(e)
    Par défaut
    y a t-il des messages d'erreur à l'insertion des données?

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 194
    Points : 220
    Points
    220
    Par défaut
    une question de droit surement

  4. #4
    jnore
    Invité(e)
    Par défaut
    regarde tes séquences sur tes clés primaires si elles sont bien à jour

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Je n'ai pas de messages d'erreurs lors de l'insertion des données.Comment fait on pour verifier si les sequences sur les clés primaires sont bien mis à jour?Au niveau des droits apriori je n'ai pas de problemes vu que je peux inserer des données dans 2 tables de la base.

  6. #6
    jnore
    Invité(e)
    Par défaut
    A chaque fois que tu crée une clé primaire avec le format serial une sequence est créee.
    Pour voir si le prochain numéro va être valide, tu regardes déjà la valeur max des clés primaires de tes tables en question.
    Si la prochaine valeur est ta valeur max+1 c'est ok et le problème n'est pas là.
    Si ça n'est pas ok tu dois reparamétrer ta séquence.

    exemple pour redonner la bonne valeur à ta séquence=
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ALTER SEQUENCE "public"."CHARGES_cle_seq" INCREMENT 1 MINVALUE 1 MAXVALUE 9223372036854775807  START 67 CACHE 1
    67 est la future valeur de ta clé primaire.

    Si t'es sous windows, utilise ems postgresql pour retrouver ta séquence et la revalider, c'est facile à faire. Pgadmin doit faire l'affaire aussi.

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Bonjour,

    j'ai regardé mes séquences, voila un exemple d'une sequence d'une table qui pour l'instant contient 12 enregistrements :
    CREATE SEQUENCE decret_numero_decret_seq
    INCREMENT 1
    MINVALUE 1
    MAXVALUE 9223372036854775807
    START 1
    CACHE 1;
    ALTER TABLE decret_numero_decret_seq OWNER TO postgres;

    faut-il que je mette 12 à START?

    je vous remercie

  8. #8
    Membre actif
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 194
    Points : 220
    Points
    220
    Par défaut
    si c'est une erreur de sequence, normalement, en voulant inserer une donnees, tu devrais avoir une erreur du genre "cle duplique"
    avec pg_dump, normalement, c'est à la creation de la table que se cree la sequence et ensuite, la valeur de départ est affecte avec un setval.

    au pire, tu peux effectuer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select last_value from decret_numero_decret_seq;
    si ca ne te donne pas 12, il faut l'initialiser:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select setval ('decret_numero_decret_seq', 12);
    a partir de l'application tu n'as pas de log qui te permettrait de voir les erreurs?
    ou au pire execute exactement la meme requete en faisant gaffe à te loguer avec les meme permissions

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Merci ça à l'air de marcher.Mais je voulais savoir dans le cas ou je refais une sauvegarde puis une restauration, est ce qu'il faut à chaque fois que je remodifie les séquences?
    merci d'avance

  10. #10
    Membre actif
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 194
    Points : 220
    Points
    220
    Par défaut
    avec quelle commande tu effectues la sauvegarde?

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Bonjour,

    en fait je travaille avec pgAdmin III pour effectuer les sauvegardes et les restaurations.

Discussions similaires

  1. Insérer enregistrement dans base mysql distante
    Par guen dans le forum Access
    Réponses: 9
    Dernier message: 19/02/2007, 16h15
  2. insertion d'enregistrements dans base
    Par le69 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 23/09/2006, 14h44
  3. [MySQL] pb apostrophe dans texte à enregistrer dans base mysql
    Par heteroclite dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 19/09/2006, 15h50
  4. Insérer Enregistrement dans Base de données
    Par TurricanII dans le forum JBuilder
    Réponses: 3
    Dernier message: 30/05/2006, 12h59
  5. nbre enregistrements dans base de données
    Par Chonchon dans le forum JDBC
    Réponses: 3
    Dernier message: 09/01/2006, 20h54

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