Aller au contenu
uencoder

View

Une vue est une définition de requête stockée (une table virtuelle) ne contenant pas de données, calculée dynamiquement au moment de la requête ; elle sert à simplifier les requêtes, isoler la sécurité et abstraire.

Objectif

Fournir l'abstraction des requêtes et l'isolement de sécurité des données, en simplifiant la réutilisation de requêtes complexes.

Mécanisme

CREATE VIEW name AS SELECT... La vue stocke la définition de la requête, pas de données, et s'étend en sous-requête à l'exécution. L'accès par colonnes/lignes peut être restreint (sécurité). Les vues matérialisées stockent physiquement les résultats et se rafraîchissent périodiquement, adaptées aux calculs lourds.

Cas d’usage

  • Encapsuler et réutiliser des requêtes complexes
  • Isolement des permissions au niveau colonne/ligne
  • Abstraction et compatibilité des données
  • Précalcul de rapports (vues matérialisées)

Exemples

  • entrée
    CREATE VIEW active_users AS SELECT * WHERE active
    Output
    Virtual table

    Computed dynamically

Erreurs courantes

Deeply nested complex views perform poorly
Use materialized views or optimize the underlying query

Termes associés

References