Vous n'êtes pas identifié(e).
Pages : 1
Bonjour à tous,
je ne connaît vraiment pas grand chose en BDD aussi à force de lire je glane mes infos au fil des pages. Ainsi je pensais que automatiquement sur une clé étrangère il y avait un index de crée mais il semble que non.
Quelqu'un pourrait-il me confirmer ainsi que le bien fondé de créer dans ce cas un index systématiquement sur les clé qui servent par la suite dans les jointures.
Merci par avance.
Gilles.
Hors ligne
Systématiquement non : un index a toujours un coût à maintenir.
Malgré tout, c'est le plus souvent une bonne idée. Si on ne le fait pas, la recherche que le moteur devra faire pour vérifier qu'il ne casse pas de contrainte d'intégrité suite à la suppression d'un enregistrement sur la table ayant la FK déclenchera un parcours complet sur la table ayant la FK.
Marc.
Hors ligne
Alors ça va dans le sens de ce que j'avais compris . Merci beaucoup pour la confirmation.
Hors ligne
Une autre précision (ne rigolez pas s'il vous plait) :
Si dans une table j'ai une clé étrangère id_trs qui lie ma table t1 à la table tiers qui a pour clé primaire id_trs me faut-il mettre un index sur la colone id_trs de t1 ou pas alors ????
Merci d'avance
Hors ligne
Un index ne sera pas du tout utile pour les petites tables, ce qui est souvent le cas de tables dictionnaires, qui sont souvent utilisées avec des clés étrangères. Donc, le fait que PostgreSQL n'ajoute pas d'index automatiquement est compréhensible. De toute façon, PostgreSQL n'ajoute un index de façon automatique que pour s'assurer d'une contrainte (UNIQUE, et clé primaire).
Si dans une table j'ai une clé étrangère id_trs qui lie ma table t1 à la table tiers qui a pour clé primaire id_trs me faut-il mettre un index sur la colone id_trs de t1 ou pas alors ????
La colonne id_trs est déjà une clé primaire, donc elle a déjà un index. Par contre, il est possible d'ajouter un index à la colonne de la table t1 (celle qui a la clé étrangère).
Guillaume.
Hors ligne
Merci pour la réponse donc pour moi vu que j'ai environ 20000 lignes dans la t1 il peut être bon de mettre un index si j'ai bien compris.?
Hors ligne
Pour 20 000, c'est préférable oui.
Marc.
Hors ligne
Merci beaucoup à tous les deux alors je crois que je vais être obligé de créer pas mal d'index.
Après je me mettrais à la configuration de mon serveur .....
Question : que doit on faire pour cloturer un post??
Hors ligne
Rien
Guillaume.
Hors ligne
Alors c bon
Hors ligne
Pages : 1