Livre_silo 30 août 2013 16:32 Page 371
¨
©
¨
©
¨
©
¨
©
C o p y r i g h t E y r o l l e s
371
A – Travaux pratiques
MySQL propose trois types d’index :
• Les clés primaires. Elles identifient uniquement les valeurs d’une table. On ne peut définir
qu’une seule clé primaire par table.
• Les index uniques. Il s’agit de clés primaires optionnelles. Une colonne peut être un index
unique si toutes ses valeurs différentes de NULL sont uniques. Une table peut comporter
plusieurs index uniques.
• Les index. Il s’agit de simples correspondances sans condition d’unicité. C’est le cas de
l’index de ce livre : une notion peut être associée à plusieurs pages.
Les index accélèrent les recherches, mais ralentissent les insertions et les modifications.
Ainsi, il n’est pas raisonnable d’indexer toutes les colonnes, de même que dans l’index d’un
livre, il n’est pas judicieux de mentionner tous les termes utilisés dans l’ouvrage. Choisir les
bonnes colonnes à indexer dépend d’une analyse fine des besoins.
A.9.2 Clé primaire auto-incrémentée
MySQL, comme beaucoup d’autres gestionnaires de bases de données, dispose d’un mécanisme de création automatique de clé primaire. Il s’agit d’attribuer à chaque valeur un
identifiant numérique unique et, lors d’une insertion, d’affecter le numéro suivant. On
parle de clé primaire auto-incrémentée.
Comme il n’ est pas possible d’avoir deux clés primaires pour une même table, on commence
par supprimer l’ancienne clé primaire. Dans la boîte de dialogue de la figure A.36, on clique
sur Supprimer et on confirme.
On ajoute maintenant une nouvelle colonne en début de table dans l’onglet Structure (figure A.39).
Pour ajouter une clé primaire auto-incrémentée, il faut définir une colonne de type INT.
Dans la liste Index, on sélectionne PRIMARY et on coche la case A.I., pour AUTO_INCREMENT
(figure A.40).
Dessins/bdd/captures/cap020.pdf
Figure A.39
Ajout d’une colonne en début de table
Dessins/bdd/captures/cap021.pdf
Figure A.40
Champ pour la création d’une clé primaire auto-incrémentée
Précédent

- 384/402

Suivant