当前位置: 首页 > 图文教程 > 网络编程 > ASP > ADO数据与XML数据间的转换的类

ASP
将Recordset作为XML保存
在ASP中过滤用户输入 提高安全性
改进 ASP 应用程序中的字符串处理性能
在ASP中使用事务控制
在access中增加农历支持模块
用ADODB.Stream代替FSO读取文本文件
处理运行时间长的脚本以及内容大的主页
用ASP编程实现快速查找
Asp中代码与页面的分离
通过ASP自动解压RAR文件
如何正确处理数据库中的Null
采用XML数据来填充ASP表单
ASP整合的一个SQL语句类
在基于Mozilla的浏览器中使用XMLHttpRequest对象
巧用in关键字实现数据的批量删除
ASP中函数调用对参数的影响
加密处理使密码更安全[CFS编码加密]
ASP错误的几种常规处理方式
在ASP程序中执行SQL语句的安全性问题
ASP实用技巧28则

ASP 中的 ADO数据与XML数据间的转换的类


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 165 ::
收藏到网摘: n/a

       当对现有数据库的数据进行分析时,经常需要对某一部分的数据进行分析.此时,使用
  1.SQL查询分析器?
   但其往往不直观,查找某个关键字又需要重新执行新的SQL.
  2.SQLXML模板?
   但又不一定有权限建立新的虚拟目录,且某些SQL语句SQLXML模板不支持
  
  数据拆离时也有相似问题。
  尤其当不同网络,不同环境,需要重新导入数据,进行分析或拆离,困难尤为明显。
  能不能有一种方法,可以将数据脱离于数据库进行分析,需要时再导入到数据库中?
  XML是个很好的选择!
  ADO本身支持数据到XML的转换,只需要对其格式进行解析,成为自己的XML文件通用格式,就可以进行本地分析
  而对通用XML格式进行数据库映射,就可完成数据重新导入数据库的工作.
  
  下面是一个ADO数据(表的基本数据)与XML数据间的相互转换的类(ASP实现),初步完成表数据的导入、导出。
  通用表间关系映射(通过XSD描述),考虑之中,希望各位赐教指点,不胜感激.
  
  一个调用类的例子:
  example.asp
  
  <!--#include file="transformXML.asp"-->
  <%
  Dim aSQL(1,1)
  Dim oXMLData
  
  '====== 连接数据库过程 ======
  '获得数据库连接对象 oDbConn
  '====== 连接数据库过程 ======
  
  aSQL(0,0) = "PubLable"
  aSQL(0,1) = "Select * from PubLabel where cLabelName like '%abc%' Order by nLabelID"
  aSQL(1,0) = "PubUser"
  aSQL(1,1) = "Select * from PubUser where cUserName like '%abc%' Order by nUserID"
  
  set oXMLData = New TransformData
  
  Call Export()
  'Call Import()
  set oXMLData = nothing
  
  
  ' // 当对象属性有默认值(default())时,可以不用在赋值
  
  Sub Export() ' // 导出数据
  
   oXMLData.aSQlData = aSQL
   ' 必须 2维SQL语句数组
  
   oXMLData.bIsSave = 1
   ' default(1) 是否保存为XML文件
  
   oXMLData.bIsOutput = 1
   ' default(0) 是否显示XML数据
  
   oXMLData.sSaveFileName = "Data.xml"
   ' default(当前时间加随机数) 如果保存XML数据,XML文件名称
  
   oXMLData.sSaveFilePath = ""
   ' default("") 如果保存XML数据,XML文件路径(相对路径)
  
   oXMLData.sEncoding = "gb2312"
   ' default("gb2312") XML文件编码类型
  
   oXMLData.Export (oDbConn)
   ' // 导出数据过程
  
   IF (oXMLData.nErrCode<>0) Then ' nErrCode(错误代码)为0,运行成功
   Response.Write oXMLData.GetErrExegesis(oXMLData.nErrCode)
   'nErrCode(错误代码),通过方法GetErrExegesis() 获得注释
   End IF
  
  End Sub
  
  Sub Import() ' // 导入数据
  
   oXMLData.sXMLFile = "Data.xml" ' 必须 数据源XML文件(包含相对路径)
  
   oXMLData.sVacancyCols = "nLabelID" ' 必须 指定某些字段的值可以不导入(屏蔽字段)
   ' 格式 "nID,dDate" (以‘,’分隔字段)
  
   oXMLData.Import (oDbConn)
  
   IF (oXMLData.nErrCode=0) Then
   Response.Write "数据导入成功!"
   Else
   Response.Write oXMLData.GetErrExegesis(oXMLData.nErrCode)
   End IF
  
  End Sub
  %>
  
  
  
  类的代码:
  TransformData.asp
  
  <%
  Class TransformData
  
  '*******************************************