<budget_name>!ADD_TAG¶
为自定义预算添加标签。标签必须通过 引用 方式添加。
语法¶
<budget_name>!ADD_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!ADD_TAG( 'ENT_REF_TAG_10382726315710_8A8626AE765E29446C38A217CAD093FCC9A454C2', 'sales');
- 直接在实参中包含 SYSTEM$REFERENCE 函数
执行以下语句后,预算将跟踪所有标有标签/值组合
team_tag = 'finance'
的对象。CALL budget_db.budget_schema.my_budget!ADD_TAG( (SELECT SYSTEM$REFERENCE('TAG', 'cost_mgmt_db.tags.team_tag', 'SESSION', 'APPLYBUDGET')), 'finance');