1

我有以下调用链接的代码,它在json结构中返回一些信息:

DECLARE 
@Object INT, 
@vResponseText varchar(8000),
@CountryInfo varchar(8000),
@GetCountryRequest AS varchar(8000)= 
'{   
   "userName":"200900119",
   "password":"8481774916"
}'



EXEC sp_OACreate 'MSXML2.ServerXMLHTTP', @Object OUTPUT

EXEC sp_OAMethod @Object, 'Open', NULL, 'POST', 'https://api.dpd.ro/v1/location/country/642', 'false'
EXEC sp_OAMethod @Object, 'SETRequestHeader', null, 'Content-Type', 'application/json'
EXEC sp_OAMethod @Object, 'Send', NULL, @GetCountryRequest
EXEC sp_OAMethod @Object, 'responseText', @vResponseText OUTPUT

EXEC sp_OADestroy @Object

PRINT @vResponseText 

到现在为止还挺好!如果我想将响应插入到表中,然后用于JSON_QUERY操作数据,我需要使用 GetProperty 方法将其插入到表中(在我的情况下是全局临时表),但该方法不起作用。

IF OBJECT_ID('tempdb.dbo.##CountryTable', 'U') IS NOT NULL
BEGIN
      DROP TABLE ##CountryTable
END

CREATE TABLE ##CountryTable(
CountryInfo varchar(8000)
)

INSERT ##CountryTable (CountryInfo)

EXEC sp_OAGetProperty @Object, 'responseText' 

EXEC sp_OADestroy @Object

我错过了什么?谢谢

4

1 回答 1

1

看看这里:http ://www.sqlservercentral.com/articles/JSON/141175/ 。它可能会帮助您获得您正在寻找的结果。

于 2018-06-19T14:58:44.330 回答