Attribut clé primaire et clé étrangère

lili32 -  
Leviathan49 Messages postés 257 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai un petit soucis concernant la création de mes tables.
J'ai 3 tables qui sont les suivantes : école, professeur et ecole_professeur (table d'association)
ecole (id_ecole, nom, adresse, ..)
professeur (id_professeur, nom, prénom, ...)
ecole_professeur (id_ecole, id_professeur)

Pour la création de la table école_professeur, id_ecole et id_professeur sont la clé primaire. Mais dois-je les déclarer en clé étrangère également ? Dois-je faire de cette manière :

DROP TABLE IF EXISTS 'ecole_professeur';
CREATE TABLE IF NOT EXISTS 'ecole_professeur' (
'id_ecole' int(11) NOT NULL,
'id_professeur' int(11) NOT NULL,
PRIMARY KEY ('id_ecole','id_professeur'),
FOREIGN KEY ('id_ecole' )
REFERENCES 'ecole' ('id_ecole' ),
FOREIGN KEY ('id_professeur' )
REFERENCES 'professeur' ('id_professeur' )
) ;


Merci pour votre aide


A voir également:

2 réponses

lili32
 
personne ne peut m'aider ?
0
Leviathan49 Messages postés 257 Date d'inscription   Statut Membre Dernière intervention   70
 
Oui, il faut les déclarer. Tu peux les déclarer à la création ou créer la table et ajouter les contraintes de clé externes après, au choix.
0