1

我想读取一个 xml 并从中获取一个值,但 xml 文件是通过以下 url 返回的:

http://webserver/XMLResult

我尝试读取 xml 文件,我使用了以下代码:

    INSERT INTO T(XmlCol)
SELECT * FROM OPENROWSET(BULK ‘http://webserver/XMLResult’,SINGLE_BLOB) as c

但我收到以下错误:

无法批量加载,因为文件……无法打开。操作系统错误代码 123(未找到错误)。

你知道如何解决这个问题吗?

如果不可能,有人可以推荐最好的方法来帮助我从 sql server 中的 URL 中获取 XML 谢谢

4

1 回答 1

0

显然,函数的data-file参数OPENROWSET不能指向 URL。我建议在 TSQL 块之外读取 XML 数据,可能将数据作为参数传递给存储过程。如果这是不可能的,并且您必须从 TSQL 中读取 XML 数据,那么我会想到两个选项,尽管我不是这两个选项的忠实粉丝:

  • 使用 CLR 函数并从那里读取您的 XML 数据;
  • 尝试通过sp_OACreate系统存储过程利用 SQL Server 机器可用的 COM 对象,如此处所建议
于 2013-10-24T06:09:20.223 回答