Bonjour

Voici des avantages aux contraintes de clés étrangères :

*

En supposant que les relations soient proprement con¸ues, les clés étrangères rendent plus difficile pour un programmeur d'insérer des valeurs incohérentes dans la base.
*

La vérification centralisée de contraintes par le serveur de base de données rend inutiles l'application de ces vérifications du coté de l'application. Cela élimine la possibilité que d'autres applications ne fassent pas les vérifications de la même fa¸on que les autres.
*

L'utilisation des modifications et effacement en cascade simplifie le code du client.
*

Les règles de clés étrangères proprement con¸ues aident à la documentation des relations entre les tables.

J'ai 4 tables innoDB dans une même base de données.

La table principale à un nombre incrémenté automatiquement comme clé et un champ 'accession'.

Mes trois autres tables contiennent des informations complémentaires pour certaines entrées de la table principale et on pour clé primaire l'accession.

Je vais devoir faire des requêtes de jointure pour récupérer des informations croisées. Est-ce utile dans mon cas d'utiliser une clé étrangère? Quand j'essaie de mettre un index sur le champ 'accession' de ma table principale, j'obtiens un message d'erreur me disant que le type BLOB nécessite une valeur numérique.


Merci pour votre aide,