A voir également:
- Clé étrangère phpmyadmin
- Clé usb non détectée - Guide
- Clé windows 8 - Guide
- Formater clé usb - Guide
- Clé usb - Accueil - Stockage
- Clé bootable windows 10 - Guide
6 réponses
J'ai un doute...
J'ai comme l'impression que la clé étrangère ne sert à rien.
Il suffit de faire:
SELECT * FROM table1, table2 WHERE table1.clé=table2.clé
Je ne me rappelle plus ce qu'apporte une clé étrangère de plus ?
Si quelqu'un peux m'informer...
-= Bobinours =-
J'ai comme l'impression que la clé étrangère ne sert à rien.
Il suffit de faire:
SELECT * FROM table1, table2 WHERE table1.clé=table2.clé
Je ne me rappelle plus ce qu'apporte une clé étrangère de plus ?
Si quelqu'un peux m'informer...
-= Bobinours =-
Coucou,
Pour moi une clé étrangère est utile dans une grosse base avec plein d'utilisateurs/développeurs... Ca permet de blinder ton schéma en empêchant par exemple qu'un programme mal foutu supprime des lignes d'une table parente mais pas celles de la table fille...
Certains SGBD permettent aussi de faire du delete "en cascade" en s'appuyant sur les clé étrangères : tu fais un delete sur ta table parente, en spécifiant que tu souhaites également supprimer les enregistrements correspondants dans la table fille (je ne sais pas la syntaxe, ça doit être qq chose comme DELETE FROM table CASCADE...)
Ca permet aussi de mieux voir les relations entre les tables quand tu n'as AUCUNE doc et que ton projet comporte 300 tables ;o)
Autres utilités ?...
Tittom
Pour moi une clé étrangère est utile dans une grosse base avec plein d'utilisateurs/développeurs... Ca permet de blinder ton schéma en empêchant par exemple qu'un programme mal foutu supprime des lignes d'une table parente mais pas celles de la table fille...
Certains SGBD permettent aussi de faire du delete "en cascade" en s'appuyant sur les clé étrangères : tu fais un delete sur ta table parente, en spécifiant que tu souhaites également supprimer les enregistrements correspondants dans la table fille (je ne sais pas la syntaxe, ça doit être qq chose comme DELETE FROM table CASCADE...)
Ca permet aussi de mieux voir les relations entre les tables quand tu n'as AUCUNE doc et que ton projet comporte 300 tables ;o)
Autres utilités ?...
Tittom
C'est un peu ce que je pensais... Je ne suis pas sûr que MySQL les gère (quoi que ça serait étonnant).
Merci Tittom ;o)
-= Bobinours =-
Merci Tittom ;o)
-= Bobinours =-
Je souhaite cré une base de donnée sous my sql, le problème est que je n arrive pas a crée les clés etrangeres.
Merci
Merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Je ne sais pas comment faire avc l'interface phpmyadmin, en revanche tu peux aller dans l'onglet "sql" et taper ton code en t'aidant de "references" pour la clé étrangère.
Par exemple :
Par exemple :
create table table1( id int AUTO_INCREMENT primary key, champ1 text, champ2 int, id_table2 int references table2(id) );