ALTER FUNCTION (DMF)¶
Ändert die Eigenschaften einer vorhandenen Datenmetrikfunktion (DMF).
Um weitere Änderungen an einer DMF vorzunehmen, müssen Sie die Funktion mit DROP FUNCTION löschen und die DMF neu erstellen.
- Siehe auch:
Syntax¶
ALTER FUNCTION [ IF EXISTS ] <name> ( TABLE ( <col_data_type> [ , ... ] ) )
RENAME TO <new_name>
ALTER FUNCTION [ IF EXISTS ] <name> ( TABLE ( <col_data_type> [ , ... ] ) )
SET SECURE
ALTER FUNCTION [ IF EXISTS ] <name> ( TABLE ( <col_data_type> [ , ... ] ) )
UNSET SECURE
ALTER FUNCTION [ IF EXISTS ] <name> ( TABLE ( <col_data_type> [ , ... ] ) )
SET COMMENT = '<string_literal>'
ALTER FUNCTION [ IF EXISTS ] <name> ( TABLE ( <col_data_type> [ , ... ] ) )
UNSET COMMENT
ALTER FUNCTION [ IF EXISTS ] <name> ( TABLE ( <col_data_type> [ , ... ] ) )
SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]
ALTER FUNCTION [ IF EXISTS ] <name> ( TABLE ( <col_data_type> [ , ... ] ) )
UNSET TAG <tag_name> [ , <tag_name> ... ]
Parameter¶
name
Gibt den Bezeichner für die zu ändernde DMF 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.
TABLE( col_data_type [ , ... ] )
Gibt den Datentyp der Argumente (Spalten) für die DMF an. Die Argumenttypen sind notwendig, weil DMFs das Überladen von Namen unterstützen, wobei zwei DMFs in demselben Schema denselben Namen haben können. Die Argument-Datentypen werden verwendet, um die DMF zu identifizieren, die Sie ändern möchten.
RENAME TO new_name
Gibt den neuen Bezeichner für die DMF an. Die Kombination aus dem Bezeichner und den vorhandenen Argumentdatentypen muss für das Schema eindeutig sein.
Weitere Informationen dazu finden Sie unter Anforderungen an Bezeichner.
Bemerkung
Wenn Sie den neuen Namen für die UDF angeben, verwenden Sie keine Argumentdatentypen oder Klammern, sondern geben Sie nur den neuen Namen an.
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.
Wenn ein Objekt umbenannt wird, müssen andere Objekte, die darauf verweisen, mit dem neuen Namen aktualisiert werden.
SET ...
Gibt die Eigenschaften an, die für die DMF festgelegt werden sollen:
SECURE
Gibt an, ob eine Funktion sicher ist. Weitere Informationen dazu finden Sie unter Schutz sensibler Informationen mit sicheren UDFs und gespeicherten Prozeduren.
COMMENT = 'string_literal'
Fügt einen Kommentar hinzu oder überschreibt den vorhandenen Kommentar für die Funktion. Der von Ihnen angegebene Wert wird in der Spalte
DESCRIPTION
der Ausgabe SHOW FUNCTIONS und SHOW USER FUNCTIONS angezeigt.
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.
UNSET ...
Gibt die Eigenschaften an, die für die Funktion nicht gesetzt werden sollen, wodurch sie auf die Standardwerte zurückgesetzt werden.
SECURE
COMMENT
TAG tag_name [ , tag_name ... ]
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 |
Datenmetrikfunktion |
|
APPLY |
Tag |
Ermöglicht das Setzen eines Tags auf eine DMF. |
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.
Nutzungshinweise¶
Wenn Sie eine bestehende Datenmetrikfunktion aktualisieren möchten und dazu die aktuelle Definition der Richtlinie anzeigen müssen, führen Sie den Befehl DESCRIBE FUNCTION (DMF) aus. oder rufen Sie die Funktion GET_DDL auf.
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.
Beispiel¶
Eine DMF zu einer sicheren DMF machen:
ALTER FUNCTION governance.dmfs.count_positive_numbers(
TABLE(
NUMBER,
NUMBER,
NUMBER
))
SET SECURE;