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

ASP
使用FSO自动创建多级文件夹的函数
专家教你利用思易ASP木马追捕入侵站点
技巧:用 isapi rewrite 实现asp的HTML静态化
使用ASP建设私人的搜索引擎
巧用SQL-DMO创建备份及校验的ASP应用
技巧:用GetString来提高ASP的速度
ASP实现的日历代码实例程序
WEB应用的缓存兼容性设计
用网站地图帮助搜索引擎
IIS虚拟主机网站防木马权限设置安全配置整理
ASP把长的数字用逗号隔开显示
所谓新云XSS跨站漏洞全公布
ASP技巧:禁用页面缓存的五种方法
ASP中实现从dbf数据库导出数据到sql表
简单熟悉掌握ASP的语法和变量
让弹出窗口变得“听话”一些
运用ASP调用数据库中视图及存储过程
瞄准Apache IIS7向开源张开双臂
ASP实现IE地址栏参数的判断
如何让你的ASP运行于非Windows平台

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 103 ::
收藏到网摘: 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
  
  '*******************************************