Bonjour,
j'ai besoin d'aide svp, car je tente de créer une table :
Code :
- CREATE TABLE post_tag (
- id INT PRIMARY KEY AUTO_INCREMENT,
- post_id INT UNSIGNED,
- tag_id INT UNSIGNED,
- CONSTRAINT cle_post -- On donne un nom à notre clé
- FOREIGN KEY (post_id) -- Colonne sur laquelle on crée la clé
- REFERENCES posts(id) -- Table de référence (Colonne de référence)
- ON DELETE CASCADE,
- CONSTRAINT cle_tag
- FOREIGN KEY (tag_id)
- REFERENCES tags(id)
- ON DELETE CASCADE
- )
- ENGINE=InnoDB;
|
et Mysql me renvoi cette erreur:
#1215 - Cannot add foreign key constraint
Pour débauguer, Si je fait seulement ceci, ça marche :
Code :
- CREATE TABLE post_tag (
- id INT PRIMARY KEY AUTO_INCREMENT,
- post_id INT UNSIGNED,
- tag_id INT UNSIGNED,
- CONSTRAINT cle_post -- On donne un nom à notre clé
- FOREIGN KEY (post_id) -- Colonne sur laquelle on crée la clé
- REFERENCES posts(id) -- Table de référence (Colonne de référence)
- ON DELETE CASCADE
- )
- ENGINE=InnoDB;
|
Mais si je fait seulement ceci, ça ne marche pas:
Code :
- CREATE TABLE post_tag (
- id INT PRIMARY KEY AUTO_INCREMENT,
- post_id INT UNSIGNED,
- tag_id INT UNSIGNED,
- CONSTRAINT cle_tag
- FOREIGN KEY (tag_id)
- REFERENCES tags(id)
- ON DELETE CASCADE
- )
- ENGINE=InnoDB;
|
Donc le problème viens de la je pense :
Code :
- CONSTRAINT cle_tag
- FOREIGN KEY (tag_id)
- REFERENCES tags(id)
- ON DELETE CASCADE
|
Mais je ne vois pas la solution.
D'où viens mon erreur svp ?
Merci