ALTER PROJECTION POLICY¶
Ersetzt die vorhandenen Regeln einer Projektionsrichtlinie durch neue Regeln oder einen neuen Kommentar und ermöglicht das Umbenennen einer Projektionsrichtlinie.
Alle an den Richtlinienregeln vorgenommenen Änderungen werden bei Ausführung der nächsten SQL-Abfrage wirksam, die die Projektionsrichtlinie verwendet.
- Siehe auch:
Syntax¶
ALTER PROJECTION POLICY [ IF EXISTS ] <name> RENAME TO <new_name>
ALTER PROJECTION POLICY [ IF EXISTS ] <name> SET BODY -> <expression>
ALTER PROJECTION POLICY <name> SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]
ALTER PROJECTION POLICY <name> UNSET TAG <tag_name> [ , <tag_name> ... ]
ALTER PROJECTION POLICY [ IF EXISTS ] <name> SET COMMENT = '<string_literal>'
ALTER PROJECTION POLICY [ IF EXISTS ] <name> UNSET COMMENT
Parameter¶
name
Gibt den Bezeichner für die zu ändernde Projektionsrichtlinie an.
Wenn der Bezeichner Leerzeichen oder Sonderzeichen enthält, muss die gesamte Zeichenfolge in doppelte Anführungszeichen gesetzt werden. Bei Bezeichnern, die in doppelte Anführungszeichen eingeschlossen sind, ist auch die Groß- und Kleinschreibung zu beachten.
Weitere Informationen dazu finden Sie unter Anforderungen an Bezeichner.
RENAME TO new_name
Gibt den neuen Bezeichner für die Projektionsrichtlinie an. Dieser muss für Ihr Schema eindeutig sein. Der neue Bezeichner kann nicht verwendet werden, wenn der Bezeichner bereits für eine andere Projektionsrichtlinie 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 Formatdb_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.
SET ...
Gibt eine oder mehrere Eigenschaften an, die für die Projektionsrichtlinie festgelegt werden sollen.
BODY -> expression
SQL-Ausdruck, der bestimmt, ob die Spalte projiziert werden soll.
Der Ausdruck ruft die interne Funktion PROJECTION_CONSTRAINT auf, um festzustellen, ob eine Spalte projiziert werden soll:
PROJECTION_CONSTRAINT(ALLOW => TRUE)
– Projektion der Spalte, an die die Projektionsrichtlinie angehängt ist, ist zulässig.PROJECTION_CONSTRAINT(ALLOW => FALSE)
– Projektion der Spalte, an die die Projektionsrichtlinie angehängt ist, ist nicht zulässig.
TAG tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ]
Gibt den Namen des Tags und den Wert der Tag-Zeichenfolge an.
Der Tag-Wert ist immer eine Zeichenfolge, die maximale 256 Zeichen lang sein kann.
Weitere Informationen zur Angabe von Tags in einer Anweisung finden Sie unter Tag-Kontingente für Objekte und Spalten.
COMMENT = 'string_literal'
Fügt einen Kommentar hinzu oder überschreibt den vorhandenen Kommentar zur Projektionsrichtlinie.
Standard: Kein Wert
UNSET ...
Gibt eine oder mehrere Eigenschaften und/oder Parameter an, die für die Projektionsrichtlinie aufgehoben werden sollen, indem sie auf ihre Standardwerte zurückgesetzt werden:
TAG tag_name [ , tag_name ... ]
COMMENT
Wenn Sie eine Eigenschaft und/oder einen Parameter zurücksetzen, geben Sie nur den Namen an. Die Angabe eines Wertes für die Eigenschaft gibt einen Fehler zurück.
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 |
Projektionsrichtlinie |
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). |
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 Projektionsrichtlinien finden Sie unter Berechtigungen und Befehle.
Nutzungshinweise¶
Wenn Sie eine bestehende Projektionsrichtlinie aktualisieren möchten und dazu die aktuelle Definition der Richtlinie anzeigen müssen, können Sie den Befehl DESCRIBE PROJECTION POLICY oder die Funktion GET_DDL ausführen.
Das Verschieben einer Projektionsrichtlinie in ein verwaltetes Zugriffsschema (unter Verwendung der ALTER PROJECTION POLICY … RENAME TO-Syntax) ist nicht erlaubt, es sei denn, der Eigentümer der Projektionsrichtlinie (d. h. die Rolle mit der Berechtigung OWNERSHIP für die Projektionsrichtlinie) ist auch Eigentümer des Zielschemas.
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¶
Umbenennen einer Projektionsrichtlinie:
ALTER PROJECTION POLICY mypolicy RENAME TO proj_policy_acctnumber;