<budget_name>!ADD_RESOURCE¶
Hinzufügen eines Objekts zu einem kundenspezifischen 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 einen Verweis auf das dem Budget hinzuzufügende Objekt erzeugt.
Rückgabewerte¶
Successfully added resource to resource group
Anforderungen an die Zugriffssteuerung¶
Die folgenden Berechtigungen und Rollen sind erforderlich, um diese Methode für ein kundenspezifisches Budget aufzurufen:
Eine Rolle mit der ADMIN-Instanzrolle für die Budgetinstanz.
Eine Rolle mit der USAGE-Berechtigung für die Datenbank und das Schema, das die Budgetinstanz enthält.
Rolle mit APPLYBUDGET-Berechtigung für das Objekt.
Nutzungshinweise¶
Sie können nur Objekte zu kundenspezifischen Budgets hinzufügen.
Sie können keinen Verweis für die Datenbank SNOWFLAKE erstellen, und Sie können sie nicht zu einem Budget hinzufügen.
Beispiele¶
Erstellen Sie einen Verweis für ein Objekt und fügen Sie das Objekt zu einem Budget hinzu.
Erstellen Sie eine Referenz für Tabelle
t1
:SELECT SYSTEM$REFERENCE('TABLE', 't1', 'SESSION', 'APPLYBUDGET');
Rückgabewerte:
ENT_REF_TABLE_5862683050074_5AEB8D58FB3ACF249F2E35F365A9357C46BB00D7
Tabelle
t1
zum Budgetmy_budget
im Schemabudget_db.budget_schema
hinzufügen:CALL budget_db.budget_schema.my_budget!ADD_RESOURCE( 'ENT_REF_TABLE_5862683050074_5AEB8D58FB3ACF249F2E35F365A9357C46BB00D7');
Hinzufügen eines Objekts zu einem Budget mit Hilfe einer SYSTEM$REFERENCE-Anweisung.
Tabelle
t1
zum Budgetmy_budget
im Schemabudget_db.budget_schema
hinzufügen:CALL budget_db.budget_schema.my_budget!ADD_RESOURCE( SELECT SYSTEM$REFERENCE('TABLE', 't2', 'SESSION', 'APPLYBUDGET'));
Fehlermeldungen¶
Die folgenden Szenarios können Ihnen helfen, Probleme zu beheben, die beim Hinzufügen von Ressourcen zu einem kundenspezifischen Budget auftreten können.
Fehler |
Unknown user-defined function <budget_db>.<budget_schema>.ADD_RESOURCE
|
---|---|
Ursache |
Die Rolle, mit der Sie diese Methode aufgerufen haben, hat nicht die ADMIN-Instanzrolle. |
Lösung |
Verwenden Sie eine Rolle, die über die erforderlichen Rollen und Berechtigungen verfügt, um Objekte zum Budget hinzuzufügen. Siehe Anforderungen an die Zugriffssteuerung. |
Fehler |
002003 (02000): SQL compilation error:
<object_type> '<object_name>' does not exist or not authorized.
|
---|---|
Ursache |
Die Rolle, mit der Sie diese Methode aufgerufen haben, hat nicht die Berechtigung APPLYBUDGET für das Objekt, das Sie dem Budget hinzufügen möchten. |
Lösung |
Verwenden Sie eine Rolle, die über die erforderlichen Rollen und Berechtigungen verfügt, um Objekte zum Budget hinzuzufügen. Siehe Anforderungen an die Zugriffssteuerung. |
Fehler |
Uncaught exception of type 'EXPRESSION_ERROR' on line 10 at position 21 :
Privilege 'APPLYBUDGET' is not authorized on the reference object.
|
---|---|
Ursache |
Sie haben versucht, eine Referenz für ein Objekt zu erstellen, ohne den Parameter PRIVILEGE in der Anweisung SYSTEM$REFERENCE anzugeben. |
Lösung |
Erstellen Sie die Referenz mit der Berechtigung APPLYBUDGET für das Objekt. |
Fehler |
505001 (55000): Uncaught exception of type 'EXPRESSION_ERROR' on line 10
at position 21 : Specified object does not exist or not authorized for
the reference.
|
---|---|
Ursache |
Sie haben versucht, die SNOWFLAKE-Datenbank mit einer Inline-SYSTEM$REFERENCE-Anweisung zu einem kundenspezifischen Budget hinzuzufügen. |
Lösung |
Die Datenbank SNOWFLAKE kann nicht zu einem Budget hinzugefügt werden. Siehe Nutzungshinweise oben. |