删除标签
您可以通过以下方式删除数据集、表或视图中的标签:
- 使用 Google Cloud 控制台
- 使用 SQL DDL 语句
- 使用 bq 命令行工具的
bq update
命令 - 调用
datasets.patch
或tables.patch
API 方法 - 使用客户端库
准备工作
授予为用户提供执行本文档中的每个任务所需权限的 Identity and Access Management (IAM) 角色。 执行任务所需的权限(如果有)列出在任务的“所需权限”部分中。
删除数据集标签
以下部分指定删除数据集标签的权限和步骤。
所需权限
如需删除数据集标签,您需要拥有以下 IAM 权限:
bigquery.datasets.get
bigquery.datasets.update
以下每个预定义 IAM 角色都包含删除数据集标签所需的权限:
roles/bigquery.dataOwner
roles/bigquery.admin
此外,如果您拥有 bigquery.datasets.create
权限,则可以删除自己创建的数据集的标签。
如需详细了解 BigQuery 中的 IAM 角色和权限,请参阅预定义的角色和权限。
删除数据集标签
如需删除数据集的标签,请选择以下选项之一:
控制台
在 Google Cloud 控制台中,选择相应的数据集。
在数据集详情页面上,点击标签右侧的铅笔图标。
在修改标签对话框中:
- 对于要删除的每个标签,点击删除 (X)。
- 如需保存更改,请点击更新。
SQL
使用 ALTER SCHEMA SET OPTIONS
DDL 语句在现有数据集上设置标签。设置标签会覆盖数据集中的所有现有标签。以下示例将删除数据集 mydataset
上的所有标签:
在 Google Cloud 控制台中,转到 BigQuery 页面。
在查询编辑器中,输入以下语句:
ALTER SCHEMA mydataset SET OPTIONS (labels = []);
点击
运行。
如需详细了解如何运行查询,请参阅运行交互式查询。
bq
如需删除数据集标签,请发出带 clear_label
标志的 bq update
命令。重复使用该标志可以指定多个标签。
如果数据集属于非默认项目,请按以下格式将相应项目 ID 添加到数据集:project_id:dataset
。
bq update \ --clear_label key \ project_id:dataset
其中:
- key 是要删除的标签的键。
- project_id 是项目 ID。
- dataset 是要更新的数据集。
示例:
如需删除 mydataset
的 department:shipping
标签,请输入带 --clear_label
标志的 bq update
命令。mydataset
属于默认项目。
bq update --clear_label department mydataset
如需删除 myotherproject
中 mydataset
的 department:shipping
标签,请输入带 --clear_label
标志的 bq update
命令。
bq update --clear_label department myotherproject:mydataset
如需删除数据集的多个标签,请重复使用 clear_label
标志并指定每个标签的键。例如,如需删除默认项目中 mydataset
的 department:shipping
标签和 cost_center:logistics
标签,请输入:
bq update \
--clear_label department \
--clear_label cost_center \
mydataset
对于每个示例,输出内容如下所示:
Dataset 'myproject:mydataset' successfully updated.
API
如需删除现有数据集的特定标签,请调用 datasets.patch
方法,然后将该标签的键值设置为 null
,以更新数据集资源的 labels
属性。
如需删除数据集的所有标签,请调用 datasets.patch
方法并删除 labels
属性。
由于 datasets.update
方法会替换整个数据集资源,因此最好使用 datasets.patch
方法。
Go
试用此示例之前,请按照 BigQuery 快速入门:使用客户端库中的 Go 设置说明进行操作。 如需了解详情,请参阅 BigQuery Go API 参考文档。
如需向 BigQuery 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
Java
试用此示例之前,请按照 BigQuery 快速入门:使用客户端库中的 Java 设置说明进行操作。 如需了解详情,请参阅 BigQuery Java API 参考文档。
如需向 BigQuery 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
Node.js
试用此示例之前,请按照 BigQuery 快速入门:使用客户端库中的 Node.js 设置说明进行操作。 如需了解详情,请参阅 BigQuery Node.js API 参考文档。
如需向 BigQuery 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
Python
试用此示例之前,请按照 BigQuery 快速入门:使用客户端库中的 Python 设置说明进行操作。 如需了解详情,请参阅 BigQuery Python API 参考文档。
如需向 BigQuery 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
删除表或视图标签
您可以通过以下方式删除表或视图标签:
- 使用 Google Cloud 控制台
- 使用 SQL DDL 语句
- 使用 bq 命令行工具的
bq update
命令 - 调用
tables.patch
API 方法- 由于视图被视为表资源,因此您可以使用
tables.patch
修改视图和表。
- 由于视图被视为表资源,因此您可以使用
- 使用客户端库
所需权限
如需删除表标签或视图标签,您需要拥有以下 IAM 权限:
bigquery.tables.get
bigquery.tables.update
以下每个预定义 IAM 角色都包含删除表或视图标签所需的权限:
roles/bigquery.dataEditor
roles/bigquery.dataOwner
roles/bigquery.admin
此外,如果您拥有 bigquery.datasets.create
权限,则可以删除自己创建的数据集中的表和视图标签。
如需详细了解 BigQuery 中的 IAM 角色和权限,请参阅预定义的角色和权限。
删除表或视图标签
如需删除表或视图的标签,请选择以下选项之一:
控制台
在 Google Cloud 控制台中,选择相应的数据集。
点击详细信息标签页,然后点击标签右侧的铅笔图标。
在修改标签对话框中:
对于要删除的每个标签,点击删除 (X)。
如需保存更改,请点击更新。
SQL
使用 ALTER TABLE SET OPTIONS
DDL 语句在现有表上设置标签,或使用 ALTER VIEW SET OPTIONS
DDL 语句 在现有视图上设置标签。设置标签会覆盖表或视图上的所有现有标签。以下示例删除表 mytable
的所有标签:
在 Google Cloud 控制台中,转到 BigQuery 页面。
在查询编辑器中,输入以下语句:
ALTER TABLE mydataset.mytable SET OPTIONS (labels = []);
点击
运行。
如需详细了解如何运行查询,请参阅运行交互式查询。
bq
如需删除表或视图的标签,请发出带 clear_label
标志的 bq update
命令。重复使用该标志可以指定多个标签。
如果表或视图属于非默认项目,请按以下格式将相应项目 ID 添加到数据集:project_id:dataset
。
bq update \ --clear_label key \ project_id:dataset.table_or_view
其中:
- key 是要删除的标签的键。
- project_id 是项目 ID。
- dataset 是要更新的数据集。
- table_or_view 是要更新的表或视图的名称。
示例:
如需删除 mydataset.mytable
的 department:shipping
标签,请输入带 --clear_label
标志的 bq update
命令。mydataset
属于默认项目。
bq update --clear_label department mydataset.mytable
如需删除 myotherproject
中 mydataset.myview
的 department:shipping
标签,请输入带 --clear_label
标志的 bq update
命令。
bq update --clear_label department myotherproject:mydataset.myview
如需删除表或视图的多个标签,请重复使用 clear_label
标志并指定每个标签的键。例如,如需删除默认项目中 mydataset.mytable
的 department:shipping
标签和 cost_center:logistics
标签,请输入:
bq update \
--clear_label department \
--clear_label cost_center \
mydataset.mytable
对于每个示例,输出内容如下所示:
Table 'myproject:mydataset.mytable' successfully updated.
API
如需删除现有表或试图的特定标签,请调用 tables.patch
方法,然后将该标签的键值设置为 null
,以更新表资源的 labels
属性。
如需删除表或视图的所有标签,请调用 tables.patch
方法并删除 labels
属性。
由于视图被视为表资源,因此您可以使用 tables.patch
方法修改视图和表。另外,由于 tables.update
方法会替换整个数据集资源,因此最好使用 tables.patch
方法。
Go
试用此示例之前,请按照 BigQuery 快速入门:使用客户端库中的 Go 设置说明进行操作。 如需了解详情,请参阅 BigQuery Go API 参考文档。
如需向 BigQuery 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
Java
试用此示例之前,请按照 BigQuery 快速入门:使用客户端库中的 Java 设置说明进行操作。 如需了解详情,请参阅 BigQuery Java API 参考文档。
如需向 BigQuery 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
Node.js
试用此示例之前,请按照 BigQuery 快速入门:使用客户端库中的 Node.js 设置说明进行操作。 如需了解详情,请参阅 BigQuery Node.js API 参考文档。
如需向 BigQuery 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
Python
试用此示例之前,请按照 BigQuery 快速入门:使用客户端库中的 Python 设置说明进行操作。 如需了解详情,请参阅 BigQuery Python API 参考文档。
如需向 BigQuery 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
删除作业标签
目前不支持删除现有作业的标签。
后续步骤
- 了解如何为 BigQuery 资源添加标签。
- 了解如何针对 BigQuery 资源查看标签。
- 了解如何针对 BigQuery 资源更新标签。
- 了解如何使用标签过滤资源。
- 参阅 Resource Manager 文档中的使用标签。