par
koliom » 22 oct. 2009, 14:31
Bonjour,
donc je me emts à revoir totalement ma table.
Je vais la diviser en 2.
1) Une table membres
id_membres
nom
prenom
2) une table article
id_article
id_membres
titre
categories.
Je souhaite donc relier le id_membres ( de la table article) au id_membres (de la table membres).
Pour créer ma deuxième table, j'essaye ceci
CREATE TABLE `article` (
`id_article` int(11) NOT NULL AUTO_INCREMENT,
`id_membres` INT( 6 ) NOT NULL ,
`image` varchar(300) NOT NULL,
`titre` varchar(70) NOT NULL,
`auteur` varchar(70) NOT NULL,
PRIMARY KEY ( `id_article` ) ,
INDEX ( `id_article` ) ,
FOREIGN KEY ( `id_membres` ) REFERENCES `membres` ( `id_membres` )
) TYPE = InnoDB
Il me met comme erreur:
#1005 - Ne peut créer la table 'base.article' (Errcode: 150) (<a href="server_engines.php?engine=InnoDB&page=Status&token=14a958bfd962f64400cd2fddbd836652">Détails...</a>)
Si j'enleve le innoDB, la requete passe. Mais est ce que ma clé étrangère sera pris en compte ?
Si oui, une petite question:
Je viens d'insèrer une personne robert machin dans la table membres.
Quelle requete je peux utiliser pour voir si ma clé étrangère fonctionne ?