使用SQL Server同时从多个URL导入xml

时间:2018-03-01 17:06:45

标签: sql-server xml

我想知道是否可以同时导入多个XML URL数据,而不必为每一个重复自己。 我在下面的代码工作正常并带来所需的数据。

IF OBJECT_ID('tempdb..#xml') IS NOT NULL DROP TABLE #xmlPB
CREATE TABLE #xml ( myXML XML )
GO

DECLARE @URL VARCHAR(8000) 

SELECT @URL = 'https://www.w3schools.com/xml/note.xml' 

DECLARE @Response varchar(8000)
DECLARE @XML xml
DECLARE @Obj int 
DECLARE @Result int 
DECLARE @HTTPStatus int 
DECLARE @ErrorMsg varchar(MAX)

EXEC @Result = sp_OACreate 'MSXML2.XMLHttp', @Obj OUT 
EXEC @Result = sp_OAMethod @Obj, 'open', NULL, 'GET', @URL, false
EXEC @Result = sp_OAMethod @Obj, 'setRequestHeader', NULL, 'Content-Type', 
'application/x-www-form-urlencoded'
EXEC @Result = sp_OAMethod @Obj, send, NULL, ''
EXEC @Result = sp_OAGetProperty @Obj, 'status', @HTTPStatus OUT 

INSERT #xml ( myXML )
EXEC @Result = sp_OAGetProperty @Obj, 'responseXML.xml'--, @Response OUT 

如果我重命名变量并添加另一个URL(并重复相同的代码),它会将数据带到一个新行,这就是我要避免的,并尽可能保持代码清洁。

提前感谢您的时间和建议。

0 个答案:

没有答案