<budget_name>!REMOVE_TAG¶
从自定义预算中移除标签/值组合。必须通过 引用 方式移除标签。
语法¶
<budget_name>!REMOVE_TAG(
{ '<tag_reference>' | <reference_statement> },
'tag_value' )
实参¶
'tag_reference'
解析为标签的序列化字符串表示形式。此字符串是 SYSTEM$REFERENCE 函数的输出。
reference_statement
SYSTEM$REFERENCE 语句,用于为要从预算中移除的标签创建引用。
'tag_value'
指定要从预算中移除的标签/值组合的值。
如果使用其他值将标签添加到预算中,则在移除此特定标签/值组合后,该标签将继续与预算相关联。
返回¶
返回 VARCHAR 值,用于指明标签/值组合是否已成功从预算中移除。
如果无法从预算中移除标签,该函数将返回一条错误消息。
访问控制要求¶
要对 自定义预算 调用此方法,需要具备以下最低权限和角色:
预算实例的 ADMIN 实例角色。
对包含预算实例的数据库和架构的 USAGE 权限。
对包含标签的数据库和架构的 USAGE 权限。
对被移除标签的 APPLYBUDGET 权限。
有关更多信息,请参阅 Budgets 角色和权限。
使用说明¶
此方法只能在 自定义预算 实例上调用。
调用此方法不会返回对象。因此,您无法使用方法链来调用此方法返回值上的另一个方法。相反,应在单独 SQL 语句中调用每个方法。
示例¶
- 在调用移除标签/值组合的方法之前检索标签引用。
以下语句会创建并返回
cost_center
标签的引用:SELECT SYSTEM$REFERENCE( 'TAG', 'cost_mgmt_db.tags.cost_center', 'SESSION', 'APPLYBUDGET');
该语句会在输出中返回引用。
ENT_REF_TAG_10382726315710_8A8626AE765E29446C38A217CAD093FCC9A454C2
以下语句使用此引用的字符串字面量将
cost_center = 'sales'
标签/值组合添加到budget_db.budget_schema.my_budget
预算:CALL budget_db.budget_schema.my_budget!REMOVE_TAG( 'ENT_REF_TAG_10382726315710_8A8626AE765E29446C38A217CAD093FCC9A454C2', 'sales');
- 直接在实参中包含 SYSTEM$REFERENCE 函数
执行以下语句后,预算将不再跟踪标有标签/值组合
team_tag = 'finance'
的对象。CALL budget_db.budget_schema.my_budget!REMOVE_TAG( (SELECT SYSTEM$REFERENCE('TAG', 'cost_mgmt_db.tags.team_tag', 'SESSION', 'APPLYBUDGET')), 'finance');