gpt4 book ai didi

r - 授予 Simba ODBC 驱动程序或 bigrquery 访问 Google Drive 文件的权限

转载 作者:行者123 更新时间:2023-12-01 01:46:12 25 4
gpt4 key购买 nike

我正在尝试将基于 Google 电子表格的 BQ 表加载到统计包 Stata 中。我尝试了两种方法来实现这一点。

首先,我使用了 Mac 版 Simba ODBC 驱动程序(版本 2.1.6),但出现以下错误:

The ODBC driver reported the following diagnostics
[Simba][BigQuery] (20) Query execution failed: Access Denied: BigQuery BigQuery: No OAuth token with Google Drive scope was found.
SQLSTATE=HY000

在我的 odbc.ini 文件中,我设置了 RequestGoogleDriveScope=1,并且正在使用 OAuth 机制的用户身份验证。我可以在 BQ Web UI 中查询这个表,我可以通过 ODBC 加载其他非 GS 表。

其次,我认为也许我可以在 R 中执行此操作,绕过 Simba/ODBC:
library(bigrquery)
data <- query_exec("SELECT * FROM my_table;", project = "XXXX", useLegacySql = FALSE)
Error: Access Denied: BigQuery BigQuery: No OAuth token with Google Drive scope was found.

总而言之,此查询适用于 BQ Web UI,不适用于 R(使用 API)或 Stata(使用 ODBC)。共同点是 Stata 或 R 在 https://myaccount.google.com/permissions 中都没有 google 驱动器权限。 ,而 BQ 客户端工具有它们。 这是我对问题所在的最佳猜测。任何有关如何更改 OAuth 范围的建议将不胜感激。

交叉发布on Statalist .

最佳答案

这是 bigrquery 的 OAuth2 主题。该应用程序通常需要访问工作表(Google Drive 范围),但它没有在身份验证过程中请求该范围。 bigrquery 的开发人员只是决定不这样做。

此处讨论了此问题:https://github.com/r-dbi/bigrquery/issues/132这似乎超出了他们的范围。

一种可能的解决方法(虽然未经测试):

  • 在不同的数据集
  • 中创建 View ( SELECT * FROM sheet_table )
  • 授予此 View 访问表的权限:https://cloud.google.com/bigquery/docs/share-access-views#authorize_the_view_to_access_the_source_dataset
  • 然后查询 View 而不是原始表 - 基本上将访问问题委托(delegate)给该 View 。
  • 关于r - 授予 Simba ODBC 驱动程序或 bigrquery 访问 Google Drive 文件的权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49142900/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com