设为首页
联系我们
加入收藏
| 网络工具 | 系统工具 | 应用软件 | 多媒体类 | 联络聊天 | 行业软件 | 图形图像 | 安全相关 | 编程开发 | 教育教学 | 游戏娱乐 |
| 程序源码 | ASP 源码 | CGI 源码 | PHP 源码 | 驱动下载 | 字体下载 | 素材下载 | 桌面大全 | 闪客天地 | 外挂插件 | 考题下载 |

站内搜索:

您的位置:首页-> 资讯中心-> 技术开发-> XML 学院-> XML文摘-> 从数据库中提取数据并自动生成XML代码

XML文摘

XML文摘

本类阅读TOP10

·XML介绍系列篇二
·XML介绍系列篇一
·从数据库中提取数据并自动生成XML代码
·XML及其技术指南
·通过XML Object操纵XML的例子
·XML介绍系列篇九
·XML介绍系列篇五
·XML介绍系列篇七
·XML介绍系列篇三
·XML系列介绍篇六

精品推荐

从数据库中提取数据并自动生成XML代码

作者:未知 来源:未知 加入时间:2004-12-1

使用ADO生成XML记录集(翻译自David Sussman)
下面这个函数可以把一个数据库中数据直接转换成XML可读的文档(主要使用在ASP中)
这个函数可以看作是ADO方法中的GetString方法(它主要用来将ADO的记录集转换成
HTML格式)的补充.
<%
Function RecordsetToXML (oRec, sName)
Dim oFld
Dim sXML
Dim sSpaces
Dim sNames

sSpaces = Space (iLevel * 2)
If Right(sName, 1) = "s" Then
sNames = sName
sName = Left (sName, Len(sName) - 1)
Else
sNames = sName & "s"
End If
sXML = sSpaces & "<" & sNames & ">" & vbCR
iLevel = iLevel + 1
sSpaces = Space (iLevel * 2)
oRec.MoveFirst
While Not oRec.EOF
sXML = sXML & sSpaces & "<" & sName & ">" & vbCR
For Each oFld In oRec.Fields
If oFld.Type = adChapter Then
Set oChapter = oFld.Value
If Not oChapter.EOF Then
iLevel = iLevel + 1
sXML = sXML & RecordsetToXML (oChapter, oFld.Name)
iLevel = ilevel - 1
End If
Else
sXML = sXML & sSpaces & " " & "<" & oFld.Name & ">" &
oFld.Value & "</" & oFld.Name & ">" & vbCR
End If
Next
sXML = sXML & sSpaces & "</" & sName & ">" & vbCR
oRec.MoveNext
Wend
iLevel = iLevel - 1
sSpaces = Space (iLevel * 2)
sXML = sXML & sSpaces & "</" & sNames & ">" & vbCR

RecordsetToXML = sXML
End Function
%>
上面就是完整的代码段,可以看出可移植性能很不错的,你只要在
你的页面中包含该程序就可以使用这个技术了。
例如:
<!--METADATA TYPE="typelib" FILE="c:\program files\common files\system\ado\msado15.dll -->
<!-- #INCLUDE FILE="RecordsetToXML.asp" -->
<%
Set oRec = Server.CreateObject ("ADODB.Recordset")
oRec.Open "authors", "DSN=pubs"
Response.Write RecordsetToXML (oRec, "Authors")
oRec.Close
%>

下面就是自动输出的XML文件
<Authors>
<Author>
<au_id>172-32-1176</au_id>
<au_lname>Whiter</au_lname>
<au_fname>Bob</au_fname>
<phone>408 496-7223</phone>
<address>10932 Bigge Rd.</address>
<city>Menlo Park</city>
<state>CA</state>
<zip>94025</zip>
<contract>True</contract>
</Author>
<Author>
<au_id>213-46-8915</au_id>
<au_lname>Green</au_lname>
. . .
</Author>
</Authors>
绑定数据
下面的部分是如何将XML中的数据通过RDS的数据绑定技术
就可以直接在IE5中浏览这些 XML中的数据了。
第一步是使用XML的数据岛来定义数据:
<XML ID="dsoAuthors">
<Authors>
<Author>
<au_id>172-32-1176</au_id>
</Author>
<Author>
<au_id>213-46-8915</au_id>
<au_lname>Green</au_lname>
. . .
</Author>
</Authors>
</XML>

第二步是使用XML和RDS技术显示数据
<XML ID="dsoAuthors" SRC="authors.xml">
</XML>
<TABLE DATASRC="#dsoAuthors" CELLSPACING=10>
<TR ID="tblSales" vAlign="TOP">
<TD><SPAN DATAFLD="au_fname"></SPAN></TD>
<TD><SPAN DATAFLD="au_lname"></SPAN></TD>
<TD><SPAN DATAFLD="phone"></SPAN></TD>
<TD><SPAN DATAFLD="city"></SPAN></TD>
<TD><SPAN DATAFLD="state"></SPAN></TD>
</TABLE>

(出处:不详 )





相关文章
相关软件