使用SQL Server连接xml接口,读取并解析数据
--数据源格式,放到任意程序中部署接口即可
--<Data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
--<Peoples>
--<People>
--<Name>张三</Name>
--<Sex>男</Sex>
--</People>
--<People>
--<Name>李四</Name>
--<Sex>女</Sex>
--</People>
--<People>
--<Name>王武</Name>
--<Sex>男</Sex>
--</People>
--<People>
--<Name>赵柳</Name>
--<Sex>女</Sex>
--</People>
--<People>
--<Name>武士刀</Name>
--<Sex>男</Sex>
--</People>
--</Peoples>
--</Data> --调用webService----------------
declare @ServiceUrl as varchar(1000)
DECLARE @UrlAddress varchar(500) --WebService地址:以http开头,结尾带斜杠,例如'https://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx/'
set @UrlAddress = 'http://localhost:11687/home/webxml'
SET @ServiceUrl=@UrlAddress--如果有参数可以在此处拼入
--访问地址获取结果
Declare @Object as Int
Declare @ResponseText as Varchar(8000) --必须8000
Declare @Data as XML EXEC sp_OACreate 'MSXML2.XMLHTTP', @Object OUT; --创建OLE组件对象 Exec sp_OAMethod @Object, 'open', NULL, 'POST',@ServiceUrl,'false' --打开链接,注意是get还是post
Exec sp_OAMethod @Object, 'send'
EXEC sp_OAMethod @Object, 'responseText', @ResponseText OUTPUT --输出参数 Select @ResponseText --输出结果
SET @Data = CAST(@ResponseText AS XML) select t.c.value('(Name/text())[1]','VARCHAR(20)') as Name,
t.c.value('(Sex/text())[1]','VARCHAR(20)') as Sex
from @Data.nodes('/*/*/*') as t(c) Exec sp_OADestroy @Object
GO ----开启 Ole Automation Procedures
--sp_configure 'show advanced options', 1;
--GO
--RECONFIGURE;
--GO
--sp_configure 'Ole Automation Procedures', 1;
--GO
--RECONFIGURE;
--GO
--EXEC sp_configure 'Ole Automation Procedures';
--GO ----关闭 Ole Automation Procedures
--sp_configure 'show advanced options', 0;
--GO
--RECONFIGURE;
--GO
--sp_configure 'Ole Automation Procedures', 0;
--GO
--RECONFIGURE;
--GO
--EXEC sp_configure 'Ole Automation Procedures';
--GO
----开启Ad Hoc Distributed Queries组件,在sql查询编辑器中执行如下语句:
--exec sp_configure 'show advanced options',1
--reconfigure
--exec sp_configure 'Ad Hoc Distributed Queries',1
--reconfigure
----关闭Ad Hoc Distributed Queries组件,在sql查询编辑器中执行如下语句:
--exec sp_configure 'Ad Hoc Distributed Queries',0
--reconfigure
--exec sp_configure 'show advanced options',0
--reconfigure
使用SQL Server连接xml接口,读取并解析数据的更多相关文章
- ADO.NET 快速入门(十二):从 SQL Server 生成 XML 数据
本文演示如何使用2种不同的方法从 SQL Server 生成 XML. 方法1:使用了 SqlCommand 的 ExecuteXmlReader 方法获取 XmlReader,然后使用 Data ...
- 通过sql server 连接mysql
图文:通过sql server 连接mysql 1.在SQL SERVER服务器上安装MYSQL ODBC驱动; 驱动下载地址:http://dev.mysql.com/downloads/con ...
- [ASP.NET]SQL Server 连接字符串和身份验证
SQL Server .NET Data Provider 连接字符串包含一个由一些属性名/值对组成的集合.每一个属性/值对都由分号隔开. PropertyName1=Value1; Property ...
- SQL Server 连接字符串和身份验证详解
SQL Server .NET Data Provider 连接字符串包含一个由一些属性名/值对组成的集合.每一个属性/值对都由分号隔开. PropertyName1=Value1; ...
- SQL Server 连接字符串和身份验证
SQL Server .NET Data Provider 连接字符串包含一个由一些属性名/值对组成的集合.每一个属性/值对都由分号隔开. PropertyName1=Value1;P ...
- Sql Server 连接池及其用法
其实我们一直在使用SqlServer的连接池.在连接字符串中,Pooling为是否启用连接池,默认值为true,表示启用. 与连接池相关的两个重要参数是 Min Pool Size和 Max Pool ...
- SQL Server 连接问题-TCP/IP
原文:SQL Server 连接问题-TCP/IP 出自:http://blogs.msdn.com/b/apgcdsd/archive/2012/02/24/ms-sql-server-tcp-ip ...
- Sql Server连接字符串
SQL Server .NET Data Provider 连接字符串包含一个由一些属性名/值对组成的集合.每一个属性/值对都由分号隔开. PropertyName1=Value1; ...
- SQL Server FOR XML PATH 语句的应用---列转行
经常在论坛看到高手使用了 for xml path,由于是搜索一下,记录了详细的使用方法.在SQL Server中利用 FOR XML PATH 语句能够把查询的数据生成XML数据,下面是它的一些应用 ...
随机推荐
- Ubuntu 12.04.1 LTS 升级 PHP 从5.3 到 5.5
#!/bin/bash # desc install php5.5 #add-apt-repository ppa:ondrej/php5 #apt-get install python-softwa ...
- C# 饼形图
原文链接:https://www.cnblogs.com/icyJ/archive/2012/10/08/Chart_Pie.html 需要实现的目标是: 1.将数据绑定到pie的后台数据中,自动生成 ...
- 设置启动窗体Program.cs文件
using System; using System.Collections.Generic; using System.Linq; using System.Windows.Forms; names ...
- 【bzoj4229】选择 离线+LCT
题目描述 现在,我想知道自己是否还有选择. 给定n个点m条边的无向图以及顺序发生的q个事件. 每个事件都属于下面两种之一: 1.删除某一条图上仍存在的边 2.询问是否存在两条边不相交的路径可以从点u出 ...
- Java线程常用方法详解
线程的常用方法 1.start() : 线程调用该方法将启动线程,使之从新建状态进入就绪队列排队,一旦轮到它来享用CPU资源时,就可以脱离创建它的线程独立开始自己的生命周期了. 2.run(): Th ...
- hadoop 编码实现文件传输、查看等基本文件控制
hadoop集群搭建参考:https://www.cnblogs.com/asker009/p/9126354.html 1.创建一个maven工程,添加依赖 <?xml version=&qu ...
- 在git 服务器挂载、创建新的项目、克隆新的项目
流程,服务器创建项目名-->客户端克隆-->客户端提交并且推送-->完成 详细步骤 1.在git服务器路径文件夹下创建空文件夹,名字为新的项目名,如在 F:\git ...
- [CEOI2004]锯木厂选址 斜率优化DP
斜率优化DP 先考虑朴素DP方程, f[i][k]代表第k个厂建在i棵树那里的最小代价,最后答案为f[n+1][3]; f[i][k]=min(f[j][k-1] + 把j+1~i的树都运到i的代价) ...
- Javascript让你的网页标题飘动起来
如果你有使用WebQQ,你也许会发现,每次收到信息的时候,就会看到title提示哪个网友或群来信息,然后网页的title就会开始飘动,挺人性化,蛮有意思的.而这个效果其实也不难,这里实现了这个效果,演 ...
- push与createElement性能比较
下面的实验是验证push()函数与CreateElement()函数在创建HTML元素的效率.可以看出,实用push()确实效率要比后者要高,不过究竟可以高出多少,还需要有专研精神的朋友去测试了,这里 ...