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

ASP
ASP调用ORACLE存储过程并返回结果集
用ASP实现网页BBS
关于Global.asa文件的深入研究与session变量失效提示的具体方法
简易ASP+注册系统
防护手册:如何防止ASP木马在服务器上运行
用Visual Basic实现多画面播放功能之二
如何增强ASP程序性能(1)
如何增强ASP程序性能(2)
如何增强ASP程序性能(3)
ASP备份数据库
二十八条改善 ASP 性能和外观的技巧
在Form域中Post大于100K的数据
如何使用ASP制作模似动态生长的表单?
Microsoft IIS 真的如此「不安全」吗?(1)
Microsoft IIS 真的如此「不安全」吗?(2)
Microsoft IIS 真的如此「不安全」吗?(3)
Microsoft IIS 真的如此「不安全」吗?(4)
Microsoft IIS 真的如此「不安全」吗?(5)
关于页面和代码分离
ServerVariables 对路径的操作

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


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