ALTER MATERIALIZED VIEW

Modifie une vue matérialisée dans le schéma actuel/spécifié. Les actions prises en charge sont les suivantes :

  • Renommer la vue matérialisée.

  • Suspendre et reprendre l’utilisation et la maintenance de la vue matérialisée.

  • Effectuer un clustering de la vue matérialisée.

  • Suspendre et reprendre le reclustering de la vue matérialisée.

  • Suppression du clustering de la vue matérialisée.

Pour plus de détails, voir Travailler avec des vues matérialisées.

Voir aussi :

CREATE MATERIALIZED VIEW , DROP MATERIALIZED VIEW , SHOW MATERIALIZED VIEWS , DESCRIBE MATERIALIZED VIEW

Syntaxe

ALTER MATERIALIZED VIEW <name>
  {
  RENAME TO <new_name>                     |
  CLUSTER BY ( <expr1> [, <expr2> ... ] )  |
  DROP CLUSTERING KEY                      |
  SUSPEND RECLUSTER                        |
  RESUME RECLUSTER                         |
  SUSPEND                                  |
  RESUME                                   |
  SET {
    [ SECURE ]
    [ COMMENT = '<comment>' ]
    }                                      |
  UNSET {
    SECURE                                 |
    COMMENT
    }
  }
Copy

Paramètres

name

Spécifie l’identificateur de la vue matérialisée à modifier.

RENAME TO new_name

Cette option vous permet de renommer une vue matérialisée.

Le nouvel identificateur doit être unique pour le schéma dans lequel la vue est créée. Le nouvel identificateur doit commencer par un caractère alphabétique et ne peut pas contenir d’espaces ou de caractères spéciaux à moins que toute la chaîne d’identificateur soit délimitée par des guillemets doubles (p. ex. "My object"). Les identificateurs entre guillemets doubles sont également sensibles à la casse. Pour plus de détails, voir Exigences relatives à l’identificateur.

Vous pouvez déplacer l’objet vers une autre base de données et/ou un autre schéma tout en renommant éventuellement l’objet. Pour ce faire, spécifiez une valeur new_name qualifiée qui inclut le nouveau nom de la base de données et/ou du schéma sous la forme db_name.schema_name.object_name ou schema_name.object_name, respectivement.

Note

  • La base de données et/ou le schéma de destination doivent déjà exister. En outre, un objet portant le même nom ne peut pas déjà exister dans le nouvel emplacement ; sinon, l’instruction renvoie une erreur.

  • Le déplacement d’un objet vers un schéma d’accès géré est interdit sauf si le propriétaire de l’objet (c’est-à-dire le rôle qui a le privilège OWNERSHIP sur l’objet) est également propriétaire du schéma cible.

Notez que le changement de nom d’une vue matérialisée ne met pas à jour les références à cette vue. Par exemple, si vous créez une vue nommée V1 au-dessus d’une vue matérialisée, puis renommez la vue matérialisée, la définition de la vue V1 devient obsolète.

CLUSTER BY expr#

Cette commande effectue un clustering de la vue matérialisée. Le clustering réorganise les lignes de la vue matérialisée pour améliorer les performances des requêtes qui appliquent un filtre en fonction des expressions de la clé de clustering.

expr# spécifie une expression sur laquelle baser l’opération de clustering de la vue matérialisée. En règle générale, l’expression est le nom d’une colonne dans la vue matérialisée.

Pour plus d’informations sur le clustering des vues matérialisées, voir : Vues matérialisées et clustering. Pour plus d’informations sur le clustering en général, voir : Qu’est-ce que le clustering de données ?.

DROP CLUSTERING KEY

Cette commande détruit le clustering de la vue matérialisée.

SUSPEND RECLUSTER

L’option SUSPEND RECLUSTER suspend le reclustering de la vue matérialisée. Pour plus d’informations sur le clustering des vues matérialisées, voir Vues matérialisées et clustering.

RESUME RECLUSTER

L’option RESUME RECLUSTER reprend le reclustering de la vue matérialisée.

SUSPEND

L’option SUSPEND suspend la maintenance (mises à jour) et l’utilisation de la vue matérialisée. Lorsque la vue est suspendue, les mises à jour de la table de base ne sont pas propagées dans la vue matérialisée. La vue matérialisée elle-même est également inaccessible ; si vous essayez de l’utiliser, vous recevez un message d’erreur semblable à celui-ci :

Failure during expansion of view 'MV1':
  SQL compilation error: Materialized View MV1 is invalid.
  Invalidation reason: Marked Materialized View as invalid manually.

Si vous suspendez une vue matérialisée en cluster, la suspension de la vue suspend implicitement le reclustering de cette vue.

RESUME

L’option RESUME vous permet de reprendre l’utilisation de la vue matérialisée. Elle reprend également la maintenance de la vue matérialisée. Si la vue est en cluster, elle reprend également implicitement le reclustering de cette vue.

SET ...

Spécifie la propriété à définir pour la vue matérialisée :

SECURE

Cette option transforme la vue en vue sécurisée. Pour plus d’informations sur les vues sécurisées, voir Utilisation de vues sécurisées.

COMMENT = 'string_literal'

Cette option définit un commentaire pour la vue matérialisée. Le commentaire n’a aucun effet sur le comportement de la vue, mais peut fournir des informations utiles aux personnes qui utilisent ou s’occupent de la maintiennent de cette vue.

UNSET ...

Spécifie la propriété à désactiver pour la vue matérialisée :

  • SECURE

  • TAG tag_name [ , tag_name ... ]

  • COMMENT

Notes sur l’utilisation

  • Utilisez la commande ALTER VIEW pour définir/annuler une politique de masquage, une politique d’accès aux lignes ou une balise sur/depuis une vue matérialisée.

  • Concernant les métadonnées :

    Attention

    Les clients doivent s’assurer qu’aucune donnée personnelle (autre que pour un objet utilisateur), donnée sensible, donnée à exportation contrôlée ou autre donnée réglementée n’est saisie comme métadonnée lors de l’utilisation du service Snowflake. Pour plus d’informations, voir Champs de métadonnées dans Snowflake.

Exemples

Renommer une vue matérialisée :

ALTER MATERIALIZED VIEW table1_MV RENAME TO my_mv;
Copy

Effectuer le cluster d’une vue matérialisée :

ALTER MATERIALIZED VIEW my_mv CLUSTER BY(i);
Copy

Suspendre le clustering d’une vue matérialisée, mais pas l’utilisation de la vue :

ALTER MATERIALIZED VIEW my_mv SUSPEND RECLUSTER;
Copy

Reprendre le clustering d’une vue matérialisée :

ALTER MATERIALIZED VIEW my_mv RESUME RECLUSTER;
Copy

Suspendre toute utilisation et maintenance automatique de la vue matérialisée spécifiée :

ALTER MATERIALIZED VIEW my_mv SUSPEND;
Copy

Reprendre toute utilisation et maintenance automatique de la vue matérialisée spécifiée :

ALTER MATERIALIZED VIEW my_mv RESUME;
Copy

Arrêter d’effectuer le clustering d’une vue matérialisée :

ALTER MATERIALIZED VIEW my_mv DROP CLUSTERING KEY;
Copy

Modifier la vue pour en faire une vue sécurisée :

ALTER MATERIALIZED VIEW mv1 SET SECURE;
Copy

Ajouter ou remplacer le commentaire pour une vue matérialisée :

ALTER MATERIALIZED VIEW mv1 SET COMMENT = 'Sample view';
Copy