通过 API 从云上的 DB2 获取 SQL 结果到 Power Query

     2023-04-14     190

关键词:

【中文标题】通过 API 从云上的 DB2 获取 SQL 结果到 Power Query【英文标题】:Get SQL results from DB2 on cloud to Power Query via API 【发布时间】:2021-09-09 20:18:00 【问题描述】:

我尝试通过 Excel Power Query 连接到云上的 db2。

基于documentation,这是 curl 请求的格式:

curl -X POST   https://hostname.com/dbapi/v4/sql_query_export   -H 'authorization: Bearer MyToken'   -H 'content-type: text/csv'   -d '"command":"select * from mytable"'

我试图通过 GUI 去,但这给了我错误

我很确定我做的不对,但我什至无法谷歌如何传递我的参数。

有人可以指导如何为此组装 M 代码吗?

我根据@nfgl 的回答试过了

let
    body  = [#"command"="select * from mytable"]
    ,json = Json.FromValue(body)
    ,wc = Web.Contents("https://hostname.com/dbapi/v4/sql_query_export", [Headers=[#"content-type"="text/csv", authorization="Bearer XXX"]])
    ,Source = Csv.Document(wc,[Delimiter=",", Encoding=65001, QuoteStyle=QuoteStyle.Csv])
in
    Source

但是不能匿名绕过凭据 ui:

当我尝试使用令牌的 Web API 时:

顺便说一句,一切都适用于 python:

import http.client

conn = http.client.HTTPSConnection("hostname.com")

payload = "\"command\":\"select * from mytable\""

headers = 
    'content-type': "text/csv",
    'authorization': "Bearer XXX"
    

conn.request("POST", "/dbapi/v4/sql_query_export", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))

【问题讨论】:

您可能想从您的问题中删除凭据... 那些是假的,但还是谢谢。 【参考方案1】:

不能通过 GUI 来做,命令 JSON 必须在请求内容中,并且 content-type 是你发送的那个,即 JSON,打开高级编辑器并做这样的事情

let
    url = "https://showcase.api.linx.twenty57.net/UnixTime/fromunixtimestamp",
    body  = [#"UnixTimeStamp"= 1589772280, #"Timezone"=""],
    json = Json.FromValue(body),
    wc = Web.Contents(url, [Headers=[#"Content-Type"="application/json"], Content=json]),
    Source = Csv.Document(wc,[Delimiter=",", Encoding=65001, QuoteStyle=QuoteStyle.Csv])
in
    Source

【讨论】:

非常感谢您的指导。但是仍然无法通过 PQ 凭据 UI。我尝试更新了我的问题。 @MichalPalko 抱歉帮不上忙

DB2 SQL 通过评估具有两种类型条目的 ID 过滤查询结果

】DB2SQL通过评估具有两种类型条目的ID过滤查询结果【英文标题】:DB2SQLfilterqueryresultbyevaluatinganIDwhichhastwotypesofentries【发布时间】:2013-04-2511:56:03【问题描述】:经过多次尝试,我都失败了,希望有人能提供帮助。该查询返回用... 查看详情

如何从 bitbucket 云上的 bitbucket 存储库获取 HTTP 访问令牌

...个存储库中构建nodeJS应用程序时从中提取模块。过去这是通过使用其中一名员工的个人访问令牌完 查看详情

通过 db2-luw 上的 xmlquery 使用正则表达式执行更新语句时出现 SQL 错误

】通过db2-luw上的xmlquery使用正则表达式执行更新语句时出现SQL错误【英文标题】:SQL-Errorwhenexecutingupdatestatementwithregexpviaxmlqueryondb2-luw【发布时间】:2019-10-2115:18:37【问题描述】:给定一个数据库表TABLE1,其列COLUMN1类型为VARCHAR(10... 查看详情

如何通过 LINQ to Sql 结果上的数据对分组进行 lambda?

】如何通过LINQtoSql结果上的数据对分组进行lambda?【英文标题】:HowtolambdathegroupbydataonaLINQtoSqlresults?【发布时间】:2010-10-0106:58:28【问题描述】:我是这样从数据库中获取数据的。Dimquery=Fromt1InTBL1_Joint2InTBL2Ont1.IDEqualst2.ID_Joint3InTB... 查看详情

我可以通过 BizTalk DRDA 服务从 Mainframe Cobol 程序访问 SQL Server 和 DB2 上的表吗?

】我可以通过BizTalkDRDA服务从MainframeCobol程序访问SQLServer和DB2上的表吗?【英文标题】:CanIaccesstablesonSQLServerandDB2fromMainframeCobolProgramsviaBizTalkDRDAServices?【发布时间】:2019-03-2803:44:44【问题描述】:我们有Mainframez/OSCOBOL应用程序在S... 查看详情

通过阿里云拉取google云上的镜像

在创建kubernetes集群时需要一些Google云上的镜像国内拉取不了Google云上的镜像,所以我们想到了阿里云,因为阿里云服务器在美国,所以我们去阿里云上的构建镜像的功能拉取国外的镜像,然后再从阿里云上拉取到本地话不多说... 查看详情

从 DB2 中的表中获取值

】从DB2中的表中获取值【英文标题】:GettingvaluesfromtableinDB2【发布时间】:2016-12-0600:46:42【问题描述】:我想使用db2从表中获取值并打印出结果。这是我尝试使用的代码:importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.Dr... 查看详情

如何在 ibm_cloud 上的 db2 中编写 sql 查询

】如何在ibm_cloud上的db2中编写sql查询【英文标题】:howtowriteasqlqueryindb2onibm_cloud【发布时间】:2019-01-2807:14:04【问题描述】:我有一个名为PEOPLEINFO的表,其中包含以下列:1.Studentname2.Grade3.Telnum当我在ibm_cloud上的Db2上运行sql查询... 查看详情

尝试使用 Python 连接 DB2 上的表时出错 (SQL0332N)

...252”到目标代码页“874”的字符转换。***”。首先我尝试通过重新创建一 查看详情

如何从 DB2 获取描述性错误消息?

...sfromDB2?【发布时间】:2011-02-1218:56:19【问题描述】:当我通过DB2上的JDBC调用SQL语句并且该语句失败时,我捕捉到带有以下消息文本的SQLException:com.ibm.db2.jcc.a.nn:DB2SQLError:SQLCODE=-206,SQLSTATE=42703,SQLERRMC 查看详情

将 Python Flask Web 服务器应用程序连接到 DB2

...有一个pythonflaskBluemix/IBM云应用程序,我想用它来将数据从云对象存储移动到云上的DB2仓库。为了更容易,我首先在数据科学体验笔记本中创建了这段代码,它运行良好。为了连接到DB2,我使用了IBMD 查看详情

嵌套 sql 上的 Perl DBI 性能

】嵌套sql上的PerlDBI性能【英文标题】:PerlDBIPerformanceonnestedsql【发布时间】:2011-08-1704:14:02【问题描述】:我对perldbi中嵌套形式的性能处理sql有疑问。基本上,脚本正在做的是连接到DB1连接到DB2从DBI获取数据在一个while循环中,... 查看详情

如何保护从云服务获取的附件 URL

】如何保护从云服务获取的附件URL【英文标题】:HowtosecuretheattachmentURLgettingfromcloudservices【发布时间】:2021-09-3011:12:53【问题描述】:我有一个用户上传附件的角度形式。上传时,附件存储在AzureStorageAccount。作为回报,我会收... 查看详情

IBM Cloud 上的 Db2 的 SQL 格式是啥?

】IBMCloud上的Db2的SQL格式是啥?【英文标题】:What\'stheSQLformatforDb2onIBMCloud?IBMCloud上的Db2的SQL格式是什么?【发布时间】:2019-07-2614:00:13【问题描述】:我在IBMCloud上使用免费版本的Db2。我想在带有JDBC驱动程序的SpringBoot应用程序... 查看详情

如何编写通过关系表获取结果的 SQL 语句? (多对多)

】如何编写通过关系表获取结果的SQL语句?(多对多)【英文标题】:HowtowriteaSQLstatementwhichgetsresultsviaarelationshiptable?(manytomany)【发布时间】:2008-10-1614:51:00【问题描述】:我有3个表(存档有很多部分,部分(可能)属于很多存... 查看详情

通过在反应中获取 API 获得空值和实际结果

】通过在反应中获取API获得空值和实际结果【英文标题】:gettingnullandactualresultfromfetchinganAPIinreact【发布时间】:2019-09-0604:59:35【问题描述】:我尝试从typicode.com获取api做一些反应,但不知何故它返回了2组道具。一个为空,另一... 查看详情

从 Azure 云到大型机的网络延迟

...,所以不了解服务和工具。有没有办法在DB2调用期间测量从云到大型机的网络延迟?我们需要从云到大型机、执行语句(具体找到什么?)然后返回 查看详情

Google Map API 通过邮政编码获取地址信息,但它通过街道号响应结果

】GoogleMapAPI通过邮政编码获取地址信息,但它通过街道号响应结果【英文标题】:GoogleMapAPIgetaddressinformationbypostalcode,butitresponseresultbystreetnumber【发布时间】:2019-12-2505:36:21【问题描述】:我正在使用googlemapapi通过世界各地的邮... 查看详情