我的许多BQ表从GSheets获取数据。 但是,一旦我从Apps脚本对这些表运行查询,我就会收到此错误:
Access Denied: BigQuery BigQuery: No OAuth token with Google Drive scope was found.
错误引用此代码行:
var queryResults = BigQuery.Jobs.query(request, projectId);
从我的BigQuery界面(查询历史记录)我可以看到不成功的请求,当我从那里重新运行它时,我得到了结果,一切都很好。
知道如何使用脚本运行查询吗?
由于
答案 0 :(得分:2)
正如Google https://issuetracker.google.com/issues/65654399支持所指出的,确保所需范围的推荐方法是在代码中添加以下内容:
// Forces the script to require
// https://www.googleapis.com/auth/drive.readonly scope.
// DriveApp.getFiles();
要强调的是,DriveApp.getFiles();电话可以放在评论中。
答案 1 :(得分:0)
根据遇到的错误,在使用enable advanced services之前尝试BigQuery Service。
另外,如Advanced Google Services中所述,
Apps脚本会自动处理authorization flow,但默认情况下不启用。
有关其他见解,请参阅Big Query And Google Spreadsheet Integration。
希望有所帮助。