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

ASP
ASP 3.0高级编程(二十七)
ASP 3.0高级编程(二十八)
ASP 3.0高级编程(二十九)
ASP 3.0高级编程(三十)
ASP中时间函数的使用(一)
ASP中时间函数的使用(二)
ASP中时间函数的使用(三)
.NET之ASP WebApplication快速入门(1)
.NET之ASP WebApplication快速入门(2)
.NET之ASP WebApplication快速入门(3)
.NET之ASP WebApplication快速入门(4)
.NET之ASP WebApplication快速入门(5)
asp.NET特写
ASP 3.0高级编程(七)
ASP 3.0高级编程(八)
ASP.NET 入门的五个步骤
ASP 组件指南
XML 数据的编码方式
ASP 3.0高级编程(九)
ASP 3.0高级编程(十)

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


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