<budget_name>!ADD_RESOURCE¶
Hinzufügen eines Objekts zu einem benutzerdefinierten Budget. Das Objekt muss durch Referenz hinzugefügt werden.
Syntax¶
<budget_name>!ADD_RESOURCE( { '<object_reference>' | <reference_statement> } )
Argumente¶
'object_reference'
Die Darstellung einer serialisierten Zeichenfolge, die in ein Objekt aufgelöst wird. Diese Zeichenfolge ist die Ausgabe der Funktion SYSTEM$REFERENCE.
reference_statement
Eine SYSTEM$REFERENCE Anweisung, die Referenz für das dem Budget hinzuzufügende Objekt erzeugt.
Bemerkung
Wenn Sie eine Snowflake Native App zu einem Budget hinzufügen möchten, geben Sie beim Aufruf von SYSTEM$REFERENCE für das Argument object_type
'DATABASE'
(nicht 'APPLICATION'
) an.
Siehe Hinzufügen einer Snowflake Native App zu einem Budget.
Rückgabewerte¶
Gibt einen VARCHAR-Wert zurück, der angibt, ob das Objekt erfolgreich zum Budget hinzugefügt wurde oder nicht. Beispiel:
Successfully added resource to resource group
Wenn das Objekt nicht zum Budget hinzugefügt werden konnte, gibt die Funktion eine Fehlermeldung zurück. Siehe Sie können keine Objekte eines kundenspezifischen Budgets hinzufügen oder entfernen.
Anforderungen an die Zugriffssteuerung¶
Die folgenden Berechtigungen und Rollen sind erforderlich, um diese Methode für ein kundenspezifisches Budget aufzurufen:
ADMIN-Instanzrolle für die Budgetinstanz.
USAGE-Berechtigung für die Datenbank und das Schema, die die Budgetinstanz enthalten.
USAGE-Berechtigung für die Datenbank und das Schema, die das hinzuzufügende Objekt enthalten (für Schemaobjekte).
APPLYBUDGET-Berechtigung für das hinzuzufügende Objekt.
Weitere Informationen dazu finden Sie unter Rollen und Berechtigungen für Budgets.
Nutzungshinweise¶
Sie können nur Objekte zu kundenspezifischen Budgets hinzufügen.
Sie können ein Objekt nur zu einem kundenspezifischen Budget hinzufügen. Wenn ein Objekt bereits in einem kundenspezifischen Budget enthalten ist und Sie dieses Objekt einem zweiten kundenspezifischen Budget hinzufügen, wird das Objekt aus dem ersten kundenspezifischen Budget entfernt, ohne dass eine Warnung ausgegeben wird.
Sie können keinen Verweis für die SNOWFLAKE-Datenbank erstellen, und Sie können sie nicht zu einem Budget hinzufügen.
Wenn Sie diese Methode aufrufen, wird das Objekt nicht zurückgegeben. Aus diesem Grund können Sie keine Methodenverkettung verwenden, um eine andere Methode mit dem Rückgabewert dieser Methode aufzurufen. Rufen Sie jede Methode in einer separaten SQL-Anweisung auf.
Beispiele¶
Die folgenden Beispiele zeigen, wie Sie ein Objekt zu einem benutzerdefinierten Budget hinzufügen:
Hinzufügen einer Tabelle zu einem Budget¶
Im folgenden Beispiel wird eine Referenz für die Tabelle
t1
erstellt und zurückgegeben:SELECT SYSTEM$REFERENCE('TABLE', 't1', 'SESSION', 'APPLYBUDGET');
Die Anweisung gibt die Referenz in der Ausgabe zurück.
ENT_REF_TABLE_5862683050074_5AEB8D58FB3ACF249F2E35F365A9357C46BB00D7
Die folgende Anweisung verwendet das Zeichenfolgenliteral für diese Referenz, um die Tabelle
t1
zum Budgetbudget_db.budget_schema.my_budget
hinzuzufügen:CALL budget_db.budget_schema.my_budget!ADD_RESOURCE( 'ENT_REF_TABLE_5862683050074_5AEB8D58FB3ACF249F2E35F365A9357C46BB00D7');
Im folgenden Beispiel wird die Tabelle
t2
zum Budgetbudget_db.budget_schema.my_budget
hinzugefügt und eine SQL-Anweisung verwendet, um die Referenz anzugeben:CALL budget_db.budget_schema.my_budget!ADD_RESOURCE( SELECT SYSTEM$REFERENCE('TABLE', 't2', 'SESSION', 'APPLYBUDGET'));
Hinzufügen einer Snowflake Native App zu einem Budget¶
Im folgenden Beispiel wird die my_app
-Anwendung zum Budget budget_db.budget_schema.my_budget
hinzugefügt.
Beachten Sie, dass Sie beim Aufruf von SYSTEM$REFERENCE 'DATABASE'
(nicht 'APPLICATION'
) als Argument object_type
übergeben muss.
CALL budget_db.budget_schema.my_budget!ADD_RESOURCE(
SELECT SYSTEM$REFERENCE('DATABASE', 'my_app', 'SESSION', 'APPLYBUDGET'));
Fehlermeldungen¶
Eine Liste der häufigsten Fehlermeldungen sowie deren Ursachen und Lösungen finden Sie unter Sie können keine Objekte eines kundenspezifischen Budgets hinzufügen oder entfernen.