我可以从 Web UI 中创建和删除 BigQuery 数据集。但是,当我使用 Python API 创建数据集时,我无法删除它。我收到一条错误消息,指出我没有该数据集的“bigquery.datasets.delete”权限,这是不正确的,因为我在此项目中具有编辑者角色。而且,如果我可以从 UI 创建和删除数据集,那么我也应该能够使用 API 创建和删除数据集,对吗?
顺便说一句,我在此数据集中没有任何表格。而且,我正在使用 Python API (https://googlecloudplatform.github.io/google-cloud-python/stable/bigquery-usage.html) 通过
dataset.create()
创建数据集
编辑者角色无法删除 BigQuery 中的数据集 - link。
考虑到这一点,我假设您也是项目所有者,因此当您登录 Web UI 时,您可以做任何您想做的事情。当您与 Python API 交互时,您使用的是个人凭据还是服务帐户?如果是后者,您应该确保已为服务帐户提供适当的访问级别以进行删除。
希望有帮助!
我暂时为用户授予 BigQuery 管理员角色,然后通过 UI 手动删除数据集。