Google bigquery 使用BigQuery Python API在一个项目中创建视图,引用另一个项目中的表

Google bigquery 使用BigQuery Python API在一个项目中创建视图,引用另一个项目中的表,google-bigquery,Google Bigquery,我正在尝试执行上述操作,但出现以下错误: ERROR - exception: 404 POST https://bigquery.googleapis.com/bigquery/v2/projects/sandbox/datasets/my_dataset_long/tables?prettyPrint=false: Not found: Dataset prod:my_dataset_short 我使用的是最终用户凭据,我有权访问这两个项目 如何在sandbox项目中创建查询prod项目数

我正在尝试执行上述操作,但出现以下错误:

ERROR - exception: 404 POST https://bigquery.googleapis.com/bigquery/v2/projects/sandbox/datasets/my_dataset_long/tables?prettyPrint=false: Not found: Dataset prod:my_dataset_short
我使用的是最终用户凭据,我有权访问这两个项目

如何在
sandbox
项目中创建查询
prod
项目数据集的视图


除了我自己的查询引用了另一个项目的表外,我还按照示例操作了tee,但仍然出现了错误。

我尝试在BigQuery控制台UI中手动重复这些步骤,方法是将查询粘贴到编辑器中,并将视图保存在我的沙盒项目中。
我得到了相同的错误
未找到:数据集…

然后我注意到“保存视图”对话框中的工具提示,其中指出视图必须与引用的表位于同一位置

视图必须与引用的表位于同一位置

这里提到的位置是一个很好的位置

这里最可能的问题是访问权限。尝试:

  • 从参考资料中选择github_源_数据集,然后单击共享数据集
  • 在“数据集权限”面板中,单击“授权视图”选项卡
  • 在共享授权视图下:
    • 对于
      选择项目
      ,请验证是否已选择项目
    • 对于
      选择数据集
      ,选择共享视图
    • 对于
      选择视图
      ,键入视图名称:github\u analyst\u view
    • 单击“确定”
  • 单击添加,然后单击完成
  • 在Python中:

    access_entries = source_dataset.access_entries
    access_entries.append(
        bigquery.AccessEntry(None, "view", view.reference.to_api_repr())
    )
    source_dataset.access_entries = access_entries
    source_dataset = client.update_dataset(
        source_dataset, ["access_entries"]
    )  # API request