Optimiser la structure d'une base de donnée
Comme cela a été écrit dans le chapitre précédent, la conception d'une base de données :
- se fait sur papier dans un premier temps
- est le résultat de multiples itérations avec l'utilisateur de la base de données pour s'assurer que toutes les situations sont bien envisagées dans la conception et possibles avec la structure mise en place.
D'autres règles permettent d'optimiser une base de donnée.
- Utilisation d’une clé primaire de type numérique avec une auto-incrémentation (AUTO_INCREMENT) . Pour chaque nouvel enregistrement la valeur de la clé primaire sera incrémentée et aucun doublon ne sera possible.
- Si une donnée est récurrente il est préférable de la stocker dans une nouvelle table, et la lier avec une jointure.
Exemple : il est préférable comme ci-contre de créer une table “Catégorie” liée par son type numérique à la clé étrangère (FOREIGN KEY).
Les champs indexés
- Utiliser un index de type UNIQUE pour les champs qui doivent contenir des données uniques. La base de donnée ne pourra alors pas contenir de doublon pour ce champ.
- Indexer les champs (INDEX) sur lesquels des recherches sont à faire (ce point sera vu ultérieurement)
- S'il n'y a pas plus de 200 enregistrements, il est déconseillé de créer des INDEX.
- Il faut éviter d'indexer des champs dont les enregistrements sont souvent modifiés.