如何通过API将云端DB2的SQL查询结果导入Excel Power Query
修正后的Power Query M代码及配置方案
你之前编写的M代码存在2个核心问题:
- 未指定请求方法为POST,也未将生成的JSON请求体传入接口
- 凭证类型选择错误,Token已手动放在请求头中,不需要额外使用Web API凭证
可直接运行的M代码
let // 构造请求体 body = [#"command"="select * from mytable"], jsonBody = Json.FromValue(body), // 发送POST请求,补全请求方法、请求体参数 wc = Web.Contents( "https://hostname.com/dbapi/v4/sql_query_export", [ Method = "POST", Content = jsonBody, Headers = [ #"content-type"="text/csv", #"authorization"="Bearer 替换为你的实际Token" ], // 可选:添加状态码处理,避免非200响应直接报错,方便排查问题 ManualStatusHandling = {400, 401, 403, 500} ] ), // 解析返回的CSV结果 Source = Csv.Document(wc,[Delimiter=",", Encoding=65001, QuoteStyle=QuoteStyle.Csv]) in Source
凭证配置步骤
- 首次运行代码弹出凭证窗口时,选择匿名凭证类型
- 下方的权限级别选择到
https://hostname.com根域名层级,不要选择具体的接口路径 - 点击确定保存即可,不需要输入任何账号密码或Token
- 如果后续出现隐私级别提示,直接将该数据源的隐私级别设置为「公共」即可正常运行
内容的提问来源于stack exchange,提问作者Michal Palko
相关产品推荐
相关产品推荐

