<budget_name>!REMOVE_RESOURCE

Remove an object from a custom budget. The object must be removed by reference.

See also:

<budget_name>!ADD_RESOURCE, <budget_name>!GET_LINKED_RESOURCES

Syntax

<budget_name>!REMOVE_RESOURCE( { '<object_reference>' | <reference_statement> } )
Copy

Arguments

'object_reference'

The serialized string representation that resolves to an object. This string is the output of the SYSTEM$REFERENCE function.

reference_statement

A SYSTEM$REFERENCE statement that creates a reference for the object to be removed from the budget.

Returns

Successfully removed resource from resource group

Access control requirements

The following minimum privileges and roles are required to call this method on a custom budget:

  • ADMIN instance role for the budget instance.

  • USAGE privilege on the database and schema that contains the budget instance.

  • USAGE privilege on the database and schema that contain the object (for schema objects).

  • APPLYBUDGET privilege on the object being removed.

For more information, see Budgets roles and privileges.

Usage notes

  • This method can only be called on custom budget instances.

  • Calling this method does not return the object. Because of this, you can’t use method chaining to call another method on the return value of this method. Instead, call each method in a separate SQL statement.

Examples

Remove table t1 from budget my_budget in schema budget_db.budget_schema by using an identifier for a reference:

CALL budget_db.budget_schema.my_budget!REMOVE_RESOURCE(
  'ENT_REF_TABLE_5862683050074_5AEB8D58FB3ACF249F2E35F365A9357C46BB00D7');
Copy

Remove table t1 from budget my_budget in schema budget_db.budget_schema by using a SYSTEM$REFERENCE statement:

CALL budget_db.budget_schema.my_budget!REMOVE_RESOURCE(
  SELECT SYSTEM$REFERENCE('TABLE', 't1', 'SESSION', 'APPLYBUDGET')
Copy

Error messages

For a list of common error messages and their causes and solutions, see You can’t add or remove objects from a custom budget.