Redash连接Google Sheets查询报错:找不到指定电子表格
我来帮你排查这个问题,你遇到的是Redash对接Google Sheets时的常见权限/配置问题,虽然已经把表格共享给服务账号,但可能还有几个细节没落实到位,按下面的步骤逐一检查试试:
确认共享权限的准确性
首先仔细核对你共享表格时用的服务账号邮箱,确保和Redash数据源配置里的服务账号完全一致——别小看这个,复制时很容易多打空格或者漏字符。另外权限至少要设为「查看」,最好给「编辑」权限,避免只读权限带来的同步问题。还要确认表格的共享范围是包含这个服务账号的,没有被误设为「仅限特定用户」却漏加账号。核对查询语句中的表格ID
你的查询语句是select * from 1YaipA_nhUq5zl37EZ9tFa32qc4kgF1cMlo41ch1lcF4,把这个ID和表格URL里的ID再逐字符对比一遍,确保没有拼写错误、大小写偏差(虽然Google Sheets ID不区分大小写,但完全匹配更稳妥),或者复制时截断了末尾的字符。检查Redash的数据源配置
回到Redash的Google Sheets数据源设置页,确认上传的服务账号密钥JSON文件属于你共享表格的那个账号——有时候会不小心用了其他GCP项目的密钥,导致权限不匹配。如果是私有环境部署的Redash,还要确认服务器能正常访问Google API,没有防火墙或代理阻断请求。刷新权限与连接
Google Sheets的共享权限有时候不会实时同步到API,你可以先关闭表格重新打开,确认共享状态没问题后,在Redash里重新保存一下数据源配置,或者刷新数据源连接,再执行查询试试。尝试指定工作表的查询格式
有些情况下,Redash需要明确指定工作表名称才能正常查询,试试修改语句为:select * from [1YaipA_nhUq5zl37EZ9tFa32qc4kgF1cMlo41ch1lcF4.Sheet1]把
Sheet1替换成你表格里实际的工作表名称(如果改过名字的话)。
内容的提问来源于stack exchange,提问作者rbocchinfuso

