bonjour,

ayant deux tables spécialité et intervenant reliées par une relation "avoir_spécialité" dont les multiplicités sont 1..* 1...*

un intervenant a une ou plusieurs spécialités
une spécialité concerne un ou plusieurs intervenants

ma question :
la table avoir_spécialité aura les deux clés des 2 tables citées ci-dessus
id_spécialité et id_intervenant , mais pour écrire le script je bloque

voici ma proposition :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
$link = "
CREATE TABLE `avoir_specialite` (
  `id_spécialité`  int(11) NOT NULL auto_increment PRIMARY KEY,
  `id_intervenant` int(11) NOT NULL auto_increment PRIMARY KEY,
  `fk_spécialité` int(11),
   FOREIGN KEY(fk_spécialité) REFERENCES specialite(id_spécialité) ON DELETE CASCADE ON UPDATE CASCADE,
   `fk_intervenant` int(11),
   FOREIGN KEY(fk_intervenant) REFERENCES intervenant_interne(id_intervenant) ON DELETE CASCADE ON UPDATE CASCADE,
   INDEX(fk_spécialité),
   INDEX(fk_intervenant)        
)TYPE=INNODB;";
ces deux clés doivent t elles etre déclarées comme primaires ou étrangères ??

merci pour votre réponse