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 24/05/2005, 08h24   #1
Membre habitué
 
Inscription : janvier 2004
Messages : 507
Détails du profil
Informations forums :
Inscription : janvier 2004
Messages : 507
Points : 101
Points : 101
Par défaut probleme de clé primaire ?

Salut,

Je viens de finir mon MCD et je vais passer au MLD.
J'ai une table employé,consommable et vehicule et il y a une association entre ces trois tables(le rond dans le mcd).Donc cette association va transformer en table qui va contenir les 3 clé primaire et ces trois clés vont formé une clé primaire unique.
Et ce que je voulais savoir, puis je le faire avec postgresql comme cela

Code :
1
2
3
4
5
6
7
8
 
CREATE TABLE consomme (
numemploye int,
numvehicule int,
numconso int,
constraint pk1 PRIMARY KEY( numemploye ,numvehicule ,numconso )
 
)

C'est bien cela, je n ai rien à ajouter de plus ?

Merci
donny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/05/2005, 08h47   #2
Membre émérite
 
Avatar de hpalpha
 
Inscription : mars 2002
Messages : 770
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 770
Points : 833
Points : 833
La syntaxe semble correcte, il ne devrait pas y avoir de probleme, juste une petite remarque, ta clef primaire nomme la autrement, sinon tu risque d'avoir un doublon avec une autre:

Code :
1
2
3
4
5
6
7
 
CREATE TABLE consomme (
numemploye int,
numvehicule int,
numconso int,
constraint pk_consomme1 PRIMARY KEY( numemploye ,numvehicule ,numconso )
)
hpalpha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/05/2005, 08h49   #3
Membre éclairé
 
Inscription : janvier 2005
Messages : 336
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : janvier 2005
Messages : 336
Points : 353
Points : 353
Lut

c'est bien le principe, par contre tes 3 trois tables ont chacune une PRIMARY KEY, donc pour chaque champ de ta table consomme tu va mettre une FOREIGN KEY, comme cela l'intégrité de tes données sera vérifié par le Moteur de PG, cela veux dire que le numemploye devra existé dans ta table des employés

Doc des FOREIGN KEY

KrysKool
kryskool est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/05/2005, 09h22   #4
Membre habitué
 
Inscription : janvier 2004
Messages : 507
Détails du profil
Informations forums :
Inscription : janvier 2004
Messages : 507
Points : 101
Points : 101
Il faut que je rajoute les clés etrangere alors
comme ceci tu veux dire :

Code :
1
2
3
4
5
6
7
8
9
10
11
 
CREATE TABLE consomme ( 
numemploye int, 
numvehicule int, 
numconso int, 
constraint pk_consomme1 PRIMARY KEY( numemploye ,numvehicule ,numconso ) 
constraint fk_employe FOREIGN KEY (numemploye) REFERENCES employe(numemploye),
constraint fk_vehicule FOREIGN KEY (numvehicule) REFERENCES vehicule(numvehicule),
constraint fk_conso FOREIGN KEY (numconso) REFERENCES consommable(numconso)
 
)
donny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/05/2005, 10h05   #5
Membre éclairé
 
Inscription : janvier 2005
Messages : 336
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : janvier 2005
Messages : 336
Points : 353
Points : 353
C'est bien ça

KrysKool
kryskool est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/05/2005, 10h29   #6
Membre habitué
 
Inscription : janvier 2004
Messages : 507
Détails du profil
Informations forums :
Inscription : janvier 2004
Messages : 507
Points : 101
Points : 101
Merci

et je voulais savoir, j ai une table fournisseur et dans mon mcd j ai fait une association entre fournisseur et consommable.
et dans mon association j'ai ajouter une date, une quantité et un numero de commande.
Et comme c est du 1-n 1-n des 2 coté sa va transformer en table
Je peux mettre des attribut dans une association entre 2 tables ?

Merci
donny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/05/2005, 10h58   #7
Membre habitué
 
Inscription : janvier 2004
Messages : 507
Détails du profil
Informations forums :
Inscription : janvier 2004
Messages : 507
Points : 101
Points : 101
Je voulais aussi savoir j'ai choisir de gerer les quantité en stock directement dans la table consommable, je n ai pas besoin de faire une table stock à part ?
donny 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 20h12.


 
 
 
 
Partenaires

Hébergement Web