Catégories :

Utilisateur et sécurité DDL

ALTER TAG

Modifie les propriétés d’une balise existante, y compris le renommage de la balise.

Toutes les modifications apportées à la balise entrent en vigueur lors de l’exécution de la prochaine requête SQL qui utilise la balise.

Voir aussi :

Spécification de valeurs de balises , Référence de balise DDL

Syntaxe

ALTER TAG [ IF EXISTS ] <name> RENAME TO <new_name>

ALTER TAG [ IF EXISTS ] <name> { ADD | DROP } ALLOWED_VALUES '<val_1>' [ , '<val_2>' , [ ... ] ]

ALTER TAG <name> UNSET ALLOWED_VALUES

ALTER TAG <name> SET MASKING POLICY <masking_policy_name> [ , MASKING POLICY <masking_policy_2_name> , ... ]

ALTER TAG <name> UNSET MASKING POLICY <masking_policy_name> [ , MASKING POLICY <masking_policy_2_name> , ... ]

ALTER TAG [ IF EXISTS ] <name> SET COMMENT = '<string_literal>'

ALTER TAG [ IF EXISTS ] <name> UNSET COMMENT

Paramètres

name

Identificateur pour la balise. Affectez la valeur de la chaîne de balises à un objet en utilisant une instruction CREATE <objet> ou une instruction ALTER <objet>.

La valeur de l’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. « Mon objet »). Les identificateurs entre guillemets doubles sont également sensibles à la casse.

Pour plus de détails, voir Exigences relatives à l’identificateur

RENAME TO new_name

Spécifie le nouvel identificateur de la balise ; doit être unique pour votre schéma. Le nouvel identificateur ne peut pas être utilisé si l’identificateur est déjà en place pour une balise différente.

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.

ALLOWED_VALUES 'val_1' [ , 'val_2' , [ ... ] ]

Spécifie une liste, séparée par des virgules, des valeurs de chaîne possibles qui peuvent être affectées à la balise lorsque celle-ci est définie sur un objet à l’aide de la commande CREATE <objet> ou ALTER <objet> correspondante.

Le nombre maximum de valeurs de balises dans cette liste est 50.

Valeur par défaut : NULL (toutes les valeurs de chaîne sont autorisées, y compris une valeur de chaîne vide [c’est-à-dire ' ']).

masking_policy_name [ , MASKING POLICY masking_policy_2_name , ... ]

Spécifie une liste, séparée par des virgules, de politiques de masquage qui peuvent être assignées à la balise.

COMMENT = 'string_literal'

Spécifie un commentaire pour la balise.

Par défaut : aucune valeur

UNSET

Spécifie une (ou plusieurs) propriété(s) et/ou paramètres à désactiver pour la balise, qui les réinitialise aux valeurs par défaut :

  • COMMENT

  • ALLOWED_VALUES

Exigences en matière de contrôle d’accès

Un rôle utilisé pour exécuter cette commande SQL doit avoir les privilèges suivants définis au minimum ainsi :

Privilège

Objet

Remarques

OWNERSHIP

Balise

OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege).

APPLY

Politique de masquage

La définition d’une politique de masquage sur une balise requiert le privilège global APPLY MASKING POLICY.

Notez que l’exploitation d’un objet dans un schéma requiert également le privilège USAGE sur la base de données et le schéma parents.

Pour obtenir des instructions sur la création d’un rôle personnalisé avec un ensemble spécifique de privilèges, voir Création de rôles personnalisés.

Pour des informations générales sur les rôles et les privilèges accordés pour effectuer des actions SQL sur des objets sécurisables, voir Contrôle d’accès dans Snowflake.

Pour plus de détails sur la DDL de balise et les privilèges, voir Gestion des balises.

Notes sur l’utilisation

  • Pour plus d’informations sur l’autorisation de la balise DDL, voir les privilèges requis.

  • Concernant l’attribution d’une ou plusieurs politiques de masquage à une balise :

    • Une balise ne peut avoir qu’une seule politique de masquage par type de données.

      Par exemple, une balise peut avoir une politique pour le type de données STRING, une politique pour le type de données NUMBER, et ainsi de suite.

    • Si une politique de masquage protège déjà une colonne et que la balise avec une politique de masquage est définie sur la même colonne, la politique de masquage directement attribuée à la colonne est prioritaire sur la politique de masquage attribuée à la balise.

    • Une balise ne peut pas être détruite si une politique de masquage est affectée à la balise, et la politique de masquage ne peut pas être détruite si la politique de masquage est affectée à une balise.

  • En ce qui concerne la réplication, en particulier avec les politiques de masquage basées sur les balises, voir les considérations sur la réplication des politiques.

  • 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

Renommez la balise cost_center en cost_center_na, où na spécifie l’Amérique du Nord.

alter tag cost_center rename to cost_center_na;
Revenir au début