SQL Server 2000中生成XML的小技巧

2016-01-29 15:57 14 1 收藏

SQL Server 2000中生成XML的小技巧,SQL Server 2000中生成XML的小技巧

【 tulaoshi.com - SQLServer 】

以前在介绍SQL2k的时候已经提到了SQL2k对XML的支持,使用for XML语句就可以很容易的把执行的结果转化为一个XML,这样可以在很大程度上提高系统运行效率和开发速度,详细的内容请参见Books Online。

但是在使用ADO(Required ADO 2.6)访问返回的XML的方式和原来的Recordset是有所不同的。如果你还是使用Recordset访问的话,只能得到一个Unicode格式的XML Schema,而无法得到XML的内容。

其实这个问题也是很容易就能解决的,只是我自以为很熟悉ADO,没有仔细看Help,所以没有发现ADO是采用Stream的方式来得到和返回XML的。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

Command 对象有两个属性,叫Input Stream和Output Stream,属性的值是一个IUnknown接口。可以把一个XML Parser的接口赋给它,或者是直接用Request、Response等。这样的好处是不需要再去生成一个Recordset,不需要去保存这些数据,从而节省了系统开销。

下面给大家一个简单的把XML用Response返回的Example:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

<%@ Language=VBScript %> <!-- #include file="ADOVBS.inc" --> <%  Dim objConn, objCmd, i  Set objConn = Server.createobject("ADODB.CONNECTION")  objConn.Open "Provider=SQLOLEDB.1;Password=;Persist Security Info=True;User ID=sa;Initial Catalog=PBA;Data Source=(local)"  Set objCmd = Server.CreateObject("ADODB.Command")  objCmd.ActiveConnection = objConn  objCmd.Properties("Output Stream") = Response  objCmd.Properties("XML Root") = "root"  objCmd.CommandText = "Select * from UserStatus for XML Auto"  Response.ContentType = "text/xml"  objCmd.Execute i, , adExecuteStream  Set objCmd = Nothing  objConn.Close  Set objConn = Nothing %>

来源:http://www.tulaoshi.com/n/20160129/1496882.html

延伸阅读
数据库是电子商务、金融以及ERP系统的基础,通常都保存着重要的商业伙伴和客户信息。大多数企业、组织以及政府部门的电子数据都保存在各种数据库中,他们用这些数据库保存一些个人资料,比如员工薪水、个人资料等等。数据库服务器还掌握着敏感的金融数据。包括交易记录、商业事务和帐号数据,战略上的或者专业的信息,比如专利和工程数据,...
标签: SQLServer
问题提交于2006年7月27日 我如何才能在SQL Server 2000中监控失败的登录尝试?我想要模拟一次失败的超级管理员登陆尝试,然后检查日志,但是里面看上去什么也没有捕捉到。 专家回答: 很遗憾,失败的登录错误报告在默认情况下是没有激活的。我不知道为什么微软要这么设置,但是它确实如此。进入SQL 企业管理器,选择你的服务器,进...
标签: SQLServer
  Microsoft SQL Server 2000的数据转换服务(中) 还可以用编程方式创建自定义任务,然后使用“注册自定义任务”命 令将其集成到 DTS设计器中。 为说明如何使用这些任务,这里显示一个简单的 DTS软件包,其中包 括两项任务: Microsoft ActiveX?脚本任务以及发送邮件任务: 图 2. 具有两项任...
标签: Web开发
首先要明确一个基本原则,XML类型的数据之间以及XML类型与其它数据类型之间都是不能比较的,也就是说XML类型的数据不能出现在等号的任何一边。 大致可分为查询类,修改类和跨域查询类。 查询类包含query(),value(),exist()和nodes(). 修改类包含modify(). 跨域查询类包含sql:variable()和sql:column(). 查询类 ...
数据库操作现在是项目开发的根本,学习Java首先应该学会怎么样连接数据库,用Java连接数据库可不像用Delphi这类工具那样设几个属性就OK,说简单也简单,说复杂,其实也挺复杂的,而且很麻烦,如果是初学,根本不能保证第一次就连接成功,下面以SQL Server 2000为例,说说Java连接数据库的基本方法,也记录一下心得。 1、下载SQL Server 2000 ...

经验教程

968

收藏

21
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部