如何从网站检索数据到SQL服务器[使用sql]

时间:2017-03-23 08:28:10

标签: sql-server

我遇到一个与直接从网站检索数据到sql数据库有关的问题。 我在网站上的数据是2016年的天气状况数据(以逗号分隔)。 我写了一些SQL程序来下载这些数据,但是我在一列中收到了所有数据。 此外,当我再次调用过程时,我收到NULL值。 是否可以将此数据直接加载到表中?如果没有,您是否知道如何将此数据下载到SQL表?

在我的sql代码下面

DECLARE
@xmlObject INT,
@vResponseText VARCHAR(MAX),
@vStatus INT,
@vStatusText VARCHAR(200)
EXEC sp_OACreate 'MSXML2.ServerXMLHTTP', @xmlObject OUTPUT
EXEC sp_OAMethod @xmlObject, 'open', NULL, 'GET',                                             'https://www.wunderground.com/history/airport/EPWA/2016/1/1/CustomHistory.html?dayend=31&monthend=12&yearend=2016&req_city=&req_state=&req_statename=&reqdb.zip=&reqdb.magic=&reqdb.wmo=&format=1'
EXEC sp_OAMethod @xmlObject, 'send'
EXEC sp_OAMethod @xmlObject, 'responseText', @vResponseText OUTPUT
EXEC sp_OAMethod @xmlObject, 'Status', @vStatus OUTPUT
EXEC sp_OAMethod @xmlObject, 'StatusText', @vStatusText OUTPUT
EXEC sp_OADestroy @xmlObject
SELECT @vResponseText

如果我更改第二行EXEC行命令返回一行中的值:下面的SQL代码:

DECLARE
@xmlObject INT,
@vResponseText VARCHAR(MAX),
@vStatus INT,
@vStatusText VARCHAR(200)
EXEC sp_OACreate 'MSXML2.ServerXMLHTTP', @xmlObject OUTPUT
EXEC sp_OAMethod @xmlObject, 'open', NULL, 'GET',  'https://www.wunderground.com/history/airport/EPWA/2016/1/1/CustomHistory.html?dayend=31&monthend=12&yearend=2016&req_city=&req_state=&req_statename=&reqdb.zip=&reqdb.magic=&reqdb.wmo=&format=1'
EXEC sp_OAMethod @xmlObject, 'send'
EXEC sp_OAMethod @xmlObject, 'responseText', --@vResponseText OUTPUT
EXEC sp_OAMethod @xmlObject, 'Status', @vStatus OUTPUT
EXEC sp_OAMethod @xmlObject, 'StatusText', @vStatusText OUTPUT
EXEC sp_OADestroy @xmlObject
SELECT @vResponseText

提前致谢! Cezary

0 个答案:

没有答案