bonjour!
Je travaille sur une base de données Mysql.
Les tables sont de type InnoDB pour une meilleure gestion des clés étrangères.
Mon problème c'est que j'ai une table dont la clé est composé par deux clés étrangères.
Pour les tables de type MyIsam, je connais la syntaxe mais là je sais pas.
Voici la syntaxe que je croyais bonne:
J'obtiens l'erreur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 create table sponsoriser ( ref_comp int not null, index ref_comp_INDEX (ref_comp), foreign key (ref_comp) references competition (code_comp) , ref_spons int not null, index ref_spons_INDEX (ref_spons), foreign key (ref_spons) references sponsor (num_spons), constraint cle_sponsoriser primary key (ref_comp, ref_spons) ) TYPE = InnoDB;
[srvcross] ERREUR 1005: Can't create table './course/sponsoriser.frm' (errno: 150)
La table sponsoriser dépend de la table compétition (clé primaire: code_comp) et de la table sponsor (clé primaire: num_spons).
Un sponsor peut sponsoriser plusieurs compétitions. Une compétition peut être sponsorisée par plusieurs sponsors.
Merci!
Partager