Bonjour, je débute en sql, j'ai une question concernant les clés étrangères.
Voici mes relations :
Salle (NoSalle, Categorie, NbPlaces)
UE (CodeUE, NomUE, Formation, HC, HTD, HTP, HCRes, HTDRes, HTPRes)
Groupes (Groupe, Formation, Effectif)
Reservation (NoReservation, NoSalle, CodeUE, Groupe, Formation, Nature)
Ici est ce que formation est une clé étrangère comme la clé de groupe est composé ? Devrais-je plûtot mettre:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 CREATE TABLE UE ( CodeUE VARCHAR(8) PRIMARY KEY, NomUE VARCHAR2(40), Formation VARCHAR2(40), HC NUMBER(5,2) , HTD NUMBER(5,2) , HTP NUMBER(5,2) , HCRes NUMBER(5,2) DEFAULT 0, HTDRes NUMBER(5,2) DEFAULT 0, HTPRes NUMBER(5,2) DEFAULT 0 );
Formation VARCHAR(40) REFERENCES Groupes(Formation)
De même :
Dois-je mettre une référence a formation et groupe ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 CREATE TABLE Reservation( NoReservation NUMBER(5,2) PRIMARY KEY, NoSalle VARCHAR(8) REFERENCES Salle(NoSalle), CodeUE VARCHAR(8) REFERENCES UE(CodeUE), Formation VARCHAR2(40), Groupe VARCHAR(8) , Nature VARCHAR(8), );
Sachant que ma table Groupes ressemble à ça:
Je vous remercie d'avance pour vos réponses
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 CREATE TABLE Groupes( Groupe VARCHAR(8) , Formation VARCHAR(8), constraint Groupe_Formation primary key (Groupe,Formation), Effectif NUMBER(4) );![]()
Partager