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 :

Problème d’héritage. (si deux fils ont le même père !)


Sujet :

PostgreSQL

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 81
    Points : 82
    Points
    82
    Par défaut Problème d’héritage. (si deux fils ont le même père !)
    J’ai une superclasse « personne » et deux sous classes fils voici la structure :

    Create table personne (code_pers serail primary key, nom_pers varchar(30), prenom_pers varchar(30), adr_pers text);

    Create table enseignant (Code_Ens number primary key, grade_Ens varchar(30)) INHERITS (personne);
    Create table administrateur (Code_Adm primary key) INHERITS (personne);

    J’ai ce pbm :

    Si un administrateur est un enseignant donc je dois créer qu’une seule occurrence de personne le pbm c’est je n’arrive pas à le faire. Quand je crée l’administrateur, le SGBD Postgres crée une autre personne. Comment faire pour que l’administrateur et l’enseignant pointent sur la même personne ! merci pour vos réponses.

  2. #2
    Expert éminent
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Bonjour,

    si tu pouvais créer un administrateur qui soit également un enseignant, cela reviendrait à créer deux fois la même "personne", ce qui serait en violation de la contrainte de clé primaire sur code_pers.

    Tu vas devoir revoir ton schéma de base...
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 81
    Points : 82
    Points
    82
    Par défaut
    Bonjour...

    je te remercie pour ta réponse. Moi c'est ce que je veux, une même personne pour enseignant et administrateur. Sous postgres, quand je fais un insert que se soit dans enseignant ou administrateur, il crée une autre personne. Comment je dois faire?

  4. #4
    Expert éminent
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Une possibilité serait de considérer un administrateur comme une "spécialisation" d'un enseignant, et donc de créer cette relation d'héritage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    personne --> enseignant --> administrateur
    A toi de voir s'il est encore opportun de conserver la relation personne-->enseignant et s'il n'est pas plus pratique de fusionner les deux tables.
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 81
    Points : 82
    Points
    82
    Par défaut
    ok merci pour la réponse. oui ta raison il faut fusionner .... encore une fois un grand merci.

Discussions similaires

  1. [2.x] [Symfony2]Problème Ajout de deux entités dans un même form
    Par the ing dans le forum Symfony
    Réponses: 1
    Dernier message: 14/12/2012, 17h48
  2. Réponses: 23
    Dernier message: 20/05/2009, 12h47
  3. [MySQL] problème avec deux requetes dans un même script
    Par leclone dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 09/02/2007, 10h28
  4. Réponses: 6
    Dernier message: 28/09/2005, 10h24
  5. deux champs ont le même nom
    Par mamouna dans le forum ASP
    Réponses: 5
    Dernier message: 01/07/2004, 13h55

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