Pbm de foreign key pas prises en compte

romca Messages postés 48 Date d'inscription mercredi 26 janvier 2005 Statut Membre Dernière intervention 19 avril 2010 - 19 mai 2006 à 17:39
cs_Seb33300 Messages postés 84 Date d'inscription mardi 20 septembre 2005 Statut Membre Dernière intervention 7 février 2010 - 24 juil. 2006 à 14:37
Salut voilà j'ai un pbm sous ma distrib mes foreign key ne sont pas pris en compte et pourtant j'ai aucune erreur.<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?>





1er: D'apres l'exemple ci dessous des tables: J'ai mis les deux tables ci dessous dans ma BDD sans déclarer le type de table:





je les transforme ensuite en Innodb au lieu de MySAM mais quand je fais un export de la table à partir de chez moi les foreign n'apparaissemt plus?






 





2eme: Quand je crée les tables en mettant directement le type avec le type=innodb impossible de les créer, en mettant type=MyISAM c'est ok. Ce que je comprend pas c'est quand je met des foreign key quand même avec le type MyISAM j'ai aucune ereur?






 





Pourtant j'ai <?xml:namespace prefix st1 ns "urn:schemas-microsoft-com:office:smarttags" /?><st1:personname w:st="on" productid="la version MySQL">la version MySQL</st1:personname> max qui gère les relations et j'avais même avant MySQL 4.0.2 (sous mandrake 10.1) qui faisait apparemment pareil mais qui normalement gère les clefs étrangères puisqu'elles acceptent les types Inoodb? Y'a t il une option a validé.





Merci.






 





Ce que j'obtiens en deuxième image plus bas.













create table users (







id_user SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,







lastname VARCHAR(50),







firstname VARCHAR(50),







login VARCHAR(20),







pwd VARCHAR(20),







email VARCHAR(50),







group_id SMALLINT UNSIGNED NOT NULL,







service SMALLINT UNSIGNED NOT NULL,







PRIMARY KEY (id_user),







INDEX(group_id),






INDEX(service)





);






 





#Création de la table services






 






create table services (







id_serv SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,







name_serv VARCHAR(20),







manager SMALLINT UNSIGNED,







PRIMARY KEY (id_serv),







FOREIGN KEY (manager) REFERENCES users(id_user) ON UPDATE CASCADE ON DELETE SET NULL,






INDEX(manager)





);





1 réponse

cs_Seb33300 Messages postés 84 Date d'inscription mardi 20 septembre 2005 Statut Membre Dernière intervention 7 février 2010
24 juil. 2006 à 14:37
Dane le fichier config de MySQL ya pas "skip InnoDB" ? sinon met le en commentaire
0
Rejoignez-nous