0% ont trouvé ce document utile (0 vote)
26 vues10 pages

Le Language SQL - Partie4

Le document traite des vues et des index dans le langage SQL, expliquant que les vues sont des tables virtuelles créées à partir de requêtes SQL, facilitant l'accès aux données complexes. Les index, quant à eux, sont des structures de données qui améliorent les performances des recherches et des tris dans les tables, avec différents types comme les index primaires et uniques. Le document souligne également les avantages et inconvénients des index, ainsi que des bonnes pratiques pour leur utilisation.

Transféré par

betrayermoon332
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
26 vues10 pages

Le Language SQL - Partie4

Le document traite des vues et des index dans le langage SQL, expliquant que les vues sont des tables virtuelles créées à partir de requêtes SQL, facilitant l'accès aux données complexes. Les index, quant à eux, sont des structures de données qui améliorent les performances des recherches et des tris dans les tables, avec différents types comme les index primaires et uniques. Le document souligne également les avantages et inconvénients des index, ainsi que des bonnes pratiques pour leur utilisation.

Transféré par

betrayermoon332
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Module : ALGÈBRE RELATIONNELLE

&
LANGAGE SQL
(Bases de Données Relationnelles)

Le langage SQL - Partie 4 : Les vues et les index

Pr. Salma MOULINE


TC MIP-Informatique — S4 Département d’Informatique
2024/2025 Laboratoire LRIT
Les vues
• Dé nition
• Une vue est une table virtuelle issue d’une requête SQL.
• Elle n’existe pas physiquement dans la base de données, mais af che dynamiquement les
résultats d'une requête.
• Permet de simpli er l'accès aux données complexes, masquer la complexité des jointures,
ltrer ou restreindre l'accès à certaines colonnes ou lignes.

• Syntaxe de création
CREATE VIEW nom_vue AS
SELECT ... FROM ... WHERE ...;

Salma MOULINE —- 2024/2025


fi
fi
fi
Les vues
• Exemple
CREATE VIEW Ens_FSR AS Création d’une vue Ens_FSR qui a comme schéma
SELECT nom, département, le nom et le département des enseignant de la FSR
FROM Enseignant
WHERE établissement = ‘FSR';

• Avantages des vues


‣ Simpli cation des requêtes complexes.
‣ Sécurité : masquer certaines colonnes sensibles.
‣ Maintenance facilitée : modi cation de la requête dans la vue sans changer les
applications clientes.
‣ Réutilisation et abstraction.
Salma MOULINE —- 2024/2025
fi
fi
Les index

• Dé nition

Un index est une structure de données qui permet d’accélérer des opérations de
recherche et de tri dans une table.

- Sans index, MySQL doit scanner toutes les lignes d’une table pour trouver les
résultats d’une requête, ce qui peut être très lent sur de grandes tables.

- Avec un index, MySQL peut accéder rapidement aux données ciblées, améliorant
ainsi considérablement les performances des requêtes.

Salma MOULINE —- 2024/2025


fi
Les index

• Principaux types d'index


- Index primaire (PRIMARY KEY) : identi e de manière unique chaque ligne. Ne peut pas
être nul (Unicité et Identi cation)
- Index unique (UNIQUE) : garantit l'unicité des valeurs dans une colonne. Peut être nul
(sauf indication contraire)
- Index simple (INDEX) : accélère les recherches sur une ou plusieurs colonnes.
Amélioration de la vitesse des requêtes SELECT
- Index plein texte (FULLTEXT) : pour la recherche textuelle avancée.

Salma MOULINE —- 2024/2025


fi
fi
Les index

• Comment ça marche ?
- La plupart des index (PRIMARY KEY, UNIQUE, INDEX, FULLTEXT) sont stockés sous
forme d’arbres B-tree, permettant des recherches rapides par égalité ou par intervalle.
- En MySql les tables InnoDB utilisent la clé primaire comme index clusterisé, ce qui
signi e que les données sont physiquement ordonnées selon cette clé.
- Les index secondaires (non-clustered) pointent vers la clé primaire pour retrouver les
lignes rapidement.

Salma MOULINE —- 2024/2025


fi
Les index
• Avantages des index

- Accélération des requêtes SELECT : Les index réduisent le nombre de lignes à parcourir,
surtout dans les clauses WHERE, JOIN, ORDER BY, GROUP BY.
- Optimisation des jointures : Indexer les colonnes utilisées dans les jointures améliore
considérablement la vitesse.
- Gestion ef cace des grandes tables : Sans index, les requêtes sur de grandes tables sont
lentes car elles scannent toutes les lignes.

Salma MOULINE —- 2024/2025


fi
Les index
• Inconvénients des index

- Coût en espace disque : Les index occupent de la place supplémentaire.


- Impact sur les opérations d’écriture : INSERT, UPDATE, DELETE sont plus lents car les
index doivent être mis à jour.
- Sur-indexation : Trop d’index peuvent dégrader les performances globales.

Salma MOULINE —- 2024/2025


Les index
• Syntaxe de création

- CREATE INDEX nom_index ON nom_table (colonne1, colonne2, ...);

• Ajout d’index à une table existante

- ALTER TABLE etudiant ADD INDEX idx_age (age);

• Exemple
- CREATE INDEX idx_nom ON etudiant(nom);

Salma MOULINE —- 2024/2025


Les index
• Bonnes pratiques

- Indexer les colonnes fréquemment utilisées dans les clauses WHERE, JOIN, ORDER BY.

- Utiliser des index composites lorsque plusieurs colonnes sont souvent utilisées ensemble
dans les ltres.

- Éviter d’indexer des colonnes avec peu de valeurs distinctes (faible cardinalité).

- Surveiller et analyser les requêtes avec `EXPLAIN` pour véri er l’utilisation des index.

Salma MOULINE —- 2024/2025


fi

Vous aimerez peut-être aussi