Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/04/2003, 14h31   #1
Invité de passage
 
Inscription : avril 2003
Messages : 1
Détails du profil
Informations forums :
Inscription : avril 2003
Messages : 1
Points : 0
Points : 0
Par défaut [Postgres] Pb d'heritage...

Salut,

voila j'ai donc une table ordi :

Code :
1
2
3
 
CREATE TABLE ORDI (
ORDIID               SERIAL               NOT NULL          PRIMARY KEY);
une table composant (parent) :

Code :
1
2
3
 
CREATE TABLE COMPOSANT (
COMPOSANTID          SERIAL               NOT NULL          PRIMARY KEY);
des enfants de composant (par ex cpu):
Code :
1
2
3
4
 
CREATE TABLE CPU (
CPUVITESSE           INT4                 NULL)
INHERITS (composant);
et une table intermédiaire entre composant et ordi :
Code :
1
2
3
4
 
CREATE TABLE possede(
COMPOSANTID          INT4                 NOT NULL          REFERENCES composant,
ORDIID               INT4                 NOT NULL          REFERENCES ordi);
Bon voila pour la base.

Mon pb maintenant :

si j'insère un composant et un ordi puis un INSERT dans ma table intermèdiare POSSEDE, la pas de pb.

Maintenant si j'insère un CPU, qui va me créer un composantid dans la table cpu et par conséquent dans la table composant(lien d'heritage) puis que je relie a ordi via possede, j'ai alors une erreur me disant que la clef étrangère possede_composantid ne peux être créer car elle fait référence a une clef ki n'existe pas. Cest un peu comme si le composantid n'etait que l'id de cpu et pas de composant.
Alors que lorsque je fait un :

Code :
1
2
 
SELECT * FROM COMPOSANT;
j'obtient bien tous mes composant inséré via la table CPU.

Ma question est :

S'agit-il d'un bug de Postgres ? Ou ai-je foiré quelque chose ?
anonia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2003, 22h34   #2
Membre habitué
 
Inscription : mai 2003
Messages : 145
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 145
Points : 146
Points : 146
ce type d'intégrité référentielle cause beaucoup de problème sous PostGreSQL, je ne sais pas si ceci a été réglé avec la nouvelle version, à compiler et à voir
wello00 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h03.


 
 
 
 
Partenaires

Hébergement Web