création de vue matérialisée

Utilisez la commande CREATE MATERIALED VIEW pour créer ou remplacer une vue matérialisée triée et projetée d'un sous-ensemble de colonnes des tables de base. Chacun de ces types de vue projette un sous-ensemble de colonnes du tableau de base et est trié sur un ensemble spécifique de colonnes du tableau de base. Le système stocke la vue de manière persistante. Il peut être affiché à l'aide de la commande " \dm

Syntaxe

Syntaxe de création d'une vue matérialisée :
CREATE [OR REPLACE] MATERIALIZED VIEW <viewname> AS SELECT <col>[,<col>…]
FROM <table> [ORDER BY <order_col>[,<order_col>…]];

Entrées

La commande CREATE MATERIALED VIEW prend en compte les données suivantes :

Tableau 1. CREATE MATERIALED VIEW inputs
Entrée Descriptif
OU REMPLACER Remplacer une vue matérialisée existante. Utilisez cette option pour reconstruire une vue après que sa table de base a été modifiée d'une manière ou d'une autre ou après avoir renommé une base de données.
<nom de la vue> Le nom de la vue matérialisée à créer.
<col> La ou les colonnes qui composent cette vue. Vous pouvez spécifier jusqu'à 64 colonnes.
<table> La table à partir de laquelle la vue est créée.
<ordre_col> La ou les colonnes sur lesquelles le tri doit être effectué.

Restrictions

La commande CREATE MATERIALED VIEW présente les restrictions suivantes :
  • Vous ne pouvez spécifier qu'une seule table de base dans la clause FROM.
  • Vous ne pouvez pas utiliser la clause WHERE lorsque vous créez une vue matérialisée.
  • Les colonnes que vous spécifiez dans la liste de sélection doivent exister dans la table de base.
  • Vous devez spécifier au moins une colonne dans la liste de sélection.
  • Vous pouvez sélectionner jusqu'à 64 colonnes pour votre vue matérialisée.
  • Les colonnes de la liste ORDER BY doivent être spécifiées dans la liste de sélection.
  • Vous ne pouvez pas spécifier une table externe, temporaire, système ou une table de base en cluster (CBT) comme table de base pour la vue.

Sorties

La commande CREATE MATERIALED VIEW produit les résultats suivants :

Tableau 2. CREATE MATERIALED VIEW outputs
Sortie Descriptif
CREATE MATERIALIZED VIEW La commande a abouti.
ERROR: Relation 'view' already exists. Une vue portant le nom spécifié existe déjà dans la base de données.

Droits

Vous devez être l'utilisateur admin, ou le propriétaire de la base de données ou du schéma où la vue matérialisée est définie, ou votre compte doit avoir le privilège Créer une vue matérialisée. Si vous spécifiez l'option OR REPLACE, vous devez également disposer du privilège Alter pour la vue matérialisée ou pour la classe d'objets Vue matérialisée.

Utilisation

Voici un exemple d'utilisation.
  • Créer une vue matérialisée :
    MYDB.SCH1(USER)=> CREATE MATERIALIZED VIEW kinds AS SELECT t1 FROM 
    emp ORDER BY name;