新 Google 电子表格的 BigQuery 访问权限

Posted

技术标签:

【中文标题】新 Google 电子表格的 BigQuery 访问权限【英文标题】:BigQuery Access for New Google Spreadsheets 【发布时间】:2014-01-07 15:26:32 【问题描述】:

已解决: 原来这是云控制台中的身份验证问题。当我单击高级服务面板中的链接时,它会在打开控制台时切换到我的主登录帐户。对于遇到类似问题的任何人,我建议您退出所有其他帐户。


原始问题。 由于消除了旧 Google 表格中的限制,我正在尝试将代码迁移到新的 Google 表格。但是,我无法运行我的代码,因为我无法为电子表格启用此功能。

(对于任何不懂我意思的人,这是新的 Google 电子表格:http://googleblog.blogspot.nl/2013/12/new-google-sheets-faster-more-powerful.html

我首先尝试的是: 资源>Advances Google Services>BigQuery API “开启” 然后: 我单击“必须在 Google Developers Console 中启用这些服务”中的链接。这会将我带到 cloud.google.com,并显示错误“您请求的项目不可用”。

图片可以在这里找到:i44.tinypic.com/117zcld.png

当我在旧的 Google 表格中执行相同的操作时,完全没有问题。我阅读了不支持的功能列表,发现一些应用程序脚本功能尚不可用,但未指定:https://support.google.com/drive/answer/3543688?hl=en&ref_topic=20322 这是否意味着 BigQuery API 访问权限尚不适用于新的 Google 电子表格?如果是这样,您是否有任何关于将来何时可用的信息?

亲切的问候,勒内

【问题讨论】:

【参考方案1】:

这些是我遵循的步骤:

Created a new Google Spreadsheet,点击您提供的链接。 转到脚本管理器,打开 BigQuery。 点击链接到 Google Developers Console,它工作正常。 在那里也启用了 BigQuery。 写了一个小脚本。 成功了!

不确定为什么您的特定电子表格会失败。您可以尝试创建一个新的吗?

我的测试脚本:

function quickBigQueryTest() 
  var resource = 
      query: 'select 1 x',
      timeoutMs: 1000
    ;
  var queryResults = BigQuery.Jobs.query(resource, 'project number');
  Logger.log(queryResults);
  var sheet = SpreadsheetApp.getActiveSheet();
  var headers = queryResults.schema.fields.map(function(field) 
    return field.name;
  );
  Logger.log(headers);
  sheet.appendRow(headers);

【讨论】:

这不是我问题的真正答案,但非常感谢您的时间和精力。这是足够的保险,可以再试一次,看看我是否忽略了一些东西。 是的,我更新了 OP 以确保人们在点击链接之前退出其他帐户。不幸的是,我没有足够的声望给你投票。

以上是关于新 Google 电子表格的 BigQuery 访问权限的主要内容,如果未能解决你的问题,请参考以下文章

使用来自 bigquery 的数据自动更新 google 电子表格

从 Google 电子表格请求 BigQuery API 会产生错误

在 Google Apps 脚本中使用 BigQuery 连接到 Google 电子表格

使用来自 Google BigQuery 的数据更新电子表格不起作用

从 BigQuery 格式化时间戳到 Google 电子表格

如何使用 Google Apps 脚本将来自 Google 电子表格和 ScriptDB 的数据插入 BigQuery 表