XML与ASP问题

来源:百度知道 编辑:UC知道 时间:2024/05/15 05:48:40
<?xml version="1.0" encoding="gb2312"?>
<BoardList Product="Dvbbs" Version="" Copyright="Aspsky.net" boardid="0">
<Article OrderID="1" ID="977" ClassID="26" Title="文章1"/>
<Article OrderID="2" ID="978" ClassID="26" Title="文章2"/>
<Article OrderID="3" ID="979" ClassID="26" Title="文章3"/>
<Article OrderID="4" ID="980" ClassID="26" Title="文章4"/>
</BoardList>
象这样一个XML文当.如何象访问数据库用SQL语句那里指定一个条件就比方说我只现在 ID<980的?
这个这么搞?

兵器之一:FOR XML

在SQL Server 2000中,标准的T-SQL SELECT语句包括FOR XML子句,它以XML文档形式返回一个查询结果。新的FOR XML子句有三种模式——RAW,AUTO,和EXPLICIT,每个都能对XML文档格式提供附加标准的控制。

下面首先介绍“FOR XML”的使用方法。

为了从SQL Server提取XML格式的数据,T-SQL中加入了一个FOR XML命令。在查询命令中使用FOR XML命令使得查询结果以XML格式出现。FOR XML命令有三种模式:RAW,AUTO和EXPLICIT。图1所显示的SQL命令访问SQL Server提供的Pubs示例数据库。有关Pubs数据库的更多信息,请参见MSDN说明。如果我们依次指定该SQL命令的模式为三种允许的模式之一,就可以得到各种模式所支持的不同XML输出。

【图1 】

SELECT store.stor_id as Id, stor_name as Name,

sale.ord_num as OrderNo,sale.qty as Qty

FROM stores store inner join

sales sale on store.stor_id = sale.stor_id

ORDER BY stor_name

FOR XML <模式>

该查询命令所生成的结果包含所有销售记录及其对应的商店,结果以商店名称的字母升序排列。查询的最后加上了FOR XML命令以及具体的模式,比如FOR XML RAW。

理想情况下,SQL命令所生成的XML文档应具有如下结构:

<Stores>

<Store Id=&single;&single; Name=&single;&single;>

</Sale OrderNo=&single;&single; Qty=&single;&single;>

</Sto