ALTER TAG

Ändert die Eigenschaften eines vorhandenen Tags, einschließlich der Umbenennung des Tags und der Festlegung einer Maskierungsrichtlinie auf dem Tag.

Alle am Tag vorgenommenen Änderungen werden bei Ausführung der nächsten SQL-Abfrage wirksam, die das Tag verwendet.

Siehe auch:

Tag-Werte angeben, Tag-DDL-Referenz

Syntax

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> , ... ]
                                                          [ FORCE ]

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
Copy

Parameter

name

Bezeichner für das Tag. Weisen Sie den Tag-Zeichenfolgenwert einem Objekt entweder mit einer CREATE <Objekt>-Anweisung oder einer ALTER <Objekt>-Anweisung zu.

Der Bezeichnerwert muss mit einem alphabetischen Zeichen beginnen und darf keine Leer- oder Sonderzeichen enthalten, es sei denn, die gesamte Bezeichnerzeichenfolge wird in doppelte Anführungszeichen gesetzt (z. B. „Mein Objekt“). Bei Bezeichnern, die in doppelte Anführungszeichen eingeschlossen sind, ist auch die Groß-/Kleinschreibung zu beachten.

Weitere Details dazu finden Sie unter Anforderungen an Bezeichner

RENAME TO new_name

Gibt den Bezeichner für das Tag an. Dieser muss für Ihr Schema eindeutig sein. Der neue Bezeichner kann nicht verwendet werden, wenn der Bezeichner bereits für ein anderes Tag verwendet wird.

Weitere Details dazu finden Sie unter Anforderungen an Bezeichner.

Sie können das Objekt in eine andere Datenbank und/oder in ein anderes Schema verschieben und dabei optional das Objekt umbenennen. Geben Sie dazu einen qualifizierten new_name-Wert an, der den neuen Datenbank- und/oder Schemanamen im Format db_name.schema_name.object_name bzw. schema_name.object_name enthält.

Bemerkung

  • Die Zieldatenbank und/oder das Zielschema müssen bereits vorhanden sein. Außerdem darf in der Zieldatenbank nicht bereits ein gleichnamiges Schema vorhanden sein, da die Anweisung sonst einen Fehler zurückgibt.

  • Das Verschieben eines Objekts in ein verwaltetes Zugriffsschema ist nicht zulässig, es sei denn, der Objekteigentümer (d. h. die Rolle mit der Berechtigung OWNERSHIP für das Objekt) ist auch Eigentümer des Zielschemas.

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

Gibt eine durch Kommas getrennte Liste der möglichen Zeichenfolgenwerte an, die dem Tag zugewiesen werden können, wenn das Tag mit dem entsprechenden CREATE <Objekt>- oder ALTER <Objekt>-Befehl auf einem Objekt festgelegt wird.

Die maximale Anzahl von Tag-Werten in dieser Liste ist 300.

Standard: NULL (alle Zeichenfolgenwerte sind zulässig, auch ein leerer Zeichenfolgenwert (d. h. ' ')).

masking_policy_name [ , MASKING POLICY masking_policy_2_name , ... ]

Gibt eine durch Komma getrennte Liste von Maskierungsrichtlinien an, die dem Tag zugewiesen werden können.

FORCE

Ersetzt eine Maskierungsrichtlinie, die derzeit auf einem Tag festgelegt ist, durch eine andere Maskierungsrichtlinie mit nur einer Anweisung.

Wenn für das Tag bereits eine Maskierungsrichtlinie desselben Datentyps festgelegt ist, müssen Sie beachten, dass bei Verwendung des Schlüsselworts FORCE die Richtlinie ersetzt wird.

Wenn für das Tag derzeit keine Maskierungsrichtlinie festgelegt ist, hat die Angabe dieses Schlüsselworts keine Auswirkungen.

Weitere Details dazu finden Sie unter Maskierungsrichtlinie auf einem Tag ersetzen.

COMMENT = 'string_literal'

Gibt einen Kommentar für das Tag an.

Standard: Kein Wert

UNSET

Gibt eine (oder mehrere) Eigenschaften und/oder Parameter an, deren Einstellung für das Tag wieder aufgehoben werden sollen, wodurch sie auf die Standardwerte zurückgesetzt werden:

  • COMMENT

  • ALLOWED_VALUES

Anforderungen an die Zugriffssteuerung

Eine Rolle, die zur Ausführung dieses SQL-Befehls verwendet wird, muss mindestens die folgenden Berechtigungen haben:

Berechtigung

Objekt

Anmerkungen

OWNERSHIP

Tag

Diese Berechtigung ist erforderlich, um Tag-Eigenschaften zu ändern (z. B. Kommentar, zulässige Werte).

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 MASKING POLICY

Konto

Für das Zuweisen und Ersetzen von Maskierungsrichtlinien auf Tags ist die globale Berechtigung APPLY MASKING POLICY erforderlich.

Beachten Sie, dass für die Bearbeitung eines Objekts in einem Schema auch die Berechtigung USAGE für die übergeordnete Datenbank und das Schema erforderlich ist.

Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einer bestimmten Gruppe von Berechtigungen finden Sie unter Erstellen von kundenspezifischen Rollen.

Allgemeine Informationen zu Rollen und Berechtigungen zur Durchführung von SQL-Aktionen auf sicherungsfähigen Objekten finden Sie unter Übersicht zur Zugriffssteuerung.

Weitere Informationen zur DDL und zu Berechtigungen von Tags finden Sie unter Tags verwalten.

Nutzungshinweise

  • Weitere Informationen zur Tag-DDL-Autorisierung finden Sie unter Erforderliche Berechtigungen.

  • Beim Zuweisen von einer oder mehreren Maskierungsrichtlinien zu einem Tag gilt Folgendes:

    • Ein Tag kann nur eine Maskierungsrichtlinie pro Datentyp haben.

      Ein Tag kann zum Beispiel eine Richtlinie für den Datentyp STRING, eine Richtlinie für den Datentyp NUMBER usw. haben.

    • Wenn eine Spalte bereits durch eine Maskierungsrichtlinie geschützt ist und das Tag mit einer Maskierungsrichtlinie auf dieselbe Spalte gesetzt wird, hat die der Spalte direkt zugewiesene Maskierungsrichtlinie Vorrang vor der dem Tag zugewiesenen Maskierungsrichtlinie.

    • Ein Tag kann nicht gelöscht werden, wenn dem Tag eine Maskierungsrichtlinie zugewiesen ist, und eine Maskierungsrichtlinie kann nicht gelöscht werden, wenn die Maskierungsrichtlinie einem Tag zugewiesen ist.

  • Weitere Informationen zur Replikation, insbesondere bei Tag-basierten Maskierungsrichtlinien, finden Sie unter Hinweise zur Richtlinienreplikation.

  • Metadaten:

    Achtung

    Kunden müssen sicherstellen, dass bei der Nutzung des Snowflake-Dienstes keine personenbezogenen Daten (außer für ein Objekt „Benutzer“), sensible Daten, exportkontrollierte Daten oder andere regulierte Daten als Metadaten eingegeben werden. Weitere Informationen dazu finden Sie unter Metadatenfelder in Snowflake.

Beispiele

Benennen Sie das Tag cost_center in cost_center_na um, wobei na für Nordamerika steht.

ALTER TAG cost_center RENAME TO cost_center_na;
Copy