ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:19.99KB ,
资源ID:9555376      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9555376.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(ADO数据XML数据间的转换的类.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

ADO数据XML数据间的转换的类.docx

1、ADO数据XML数据间的转换的类ADO数据与XML数据间的转换的类当对现有数据库的数据进行分析时,经常需要对某一部分的数据进行分析.此时,使用1.SQL查询分析器?但其往往不直观,查找某个关键字又需要重新执行新的SQL.2.SQLXML模板?但又不一定有权限建立新的虚拟目录,且某些SQL语句SQLXML模板不支持 数据拆离时也有相似问题。尤其当不同网络,不同环境,需要重新导入数据,进行分析或拆离,困难尤为明显。能不能有一种方法,可以将数据脱离于数据库进行分析,需要时再导入到数据库中?XML是个很好的选择!ADO本身支持数据到XML的转换,只需要对其格式进行解析,成为自己的XML文件通用格式,就

2、可以进行本地分析而对通用XML格式进行数据库映射,就可完成数据重新导入数据库的工作.下面是一个ADO数据(表的基本数据)与XML数据间的相互转换的类(ASP实现),初步完成表数据的导入、导出。通用表间关系映射(通过XSD描述),考虑之中,希望各位赐教指点,不胜感激.一个调用类的例子:example.asp%Dim aSQL(1,1)Dim oXMLData= 连接数据库过程 =获得数据库连接对象 oDbConn= 连接数据库过程 =aSQL(0,0) = PubLableaSQL(0,1) = Select * from PubLabel where cLabelName like %abc%

3、 Order by nLabelIDaSQL(1,0) = PubUseraSQL(1,1) = Select * from PubUser where cUserName like %abc% Order by nUserIDset oXMLData = New TransformDataCall Export()Call Import()set oXMLData = nothing/ 当对象属性有默认值(default()时,可以不用在赋值Sub Export() / 导出数据oXMLData.aSQlData= aSQL 必须2维SQL语句数组oXMLData.bIsSave= 1 de

4、fault(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.nErrCode0) Then nErr

5、Code(错误代码)为0,运行成功Response.Write oXMLData.GetErrExegesis(oXMLData.nErrCode)nErrCode(错误代码),通过方法GetErrExegesis() 获得注释End IFEnd SubSub Import() / 导入数据oXMLData.sXMLFile= Data.xml 必须数据源XML文件(包含相对路径)oXMLData.sVacancyCols= nLabelID 必须指定某些字段的值可以不导入(屏蔽字段) 格式nID,dDate(以,分隔字段)oXMLData.Import (oDbConn)IF (oXMLDa

6、ta.nErrCode=0) ThenResponse.Write 数据导入成功!ElseResponse.Write oXMLData.GetErrExegesis(oXMLData.nErrCode)End IFEnd Sub% 类的代码:TransformData.asp%Class TransformData*Copyright (c) 2003创 建 人:moonpiazza日期:2003.5.21描述:ADO数据与XML数据间的转换(ASP实现)版本:1.0功能: ADO数据(表的基本数据)与XML数据间的相互转换待 改 进:表间数据的关联性(通用),数据量大时速度问题版权:欢迎改

7、进,翻版不究:_)*公共方法:Export, Import, GetErrExegesis*= 公共变量End =Private m_oXMLDOMPrivate m_oXSLDOM= 公共变量 Begin = 错误代码定义 Begin =Private m_nErrCode_NotArrayPrivate m_nErrCode_XMLDOMPrivate m_nErrCode_ReadDataPrivate m_nErrCode_WriteDataPrivate m_nErrCode_SavePrivate m_nErrCode_EnsFilePrivate m_nErrCode_ErrFi

8、le= 错误代码定义End = 属性定义 Begin =Private m_aSQlDataPrivate m_bIsSavePrivate m_bIsOutputPrivate m_sSaveFileNamePrivate m_sSaveFilePathPrivate m_sXMLFilePrivate m_sVacancyColsPrivate m_nErrCodePrivate m_sEncodingPrivate m_sImportSQL*属性:aSQlData状态:可写类型:2维数组描述:SQL语句数组,1维是表名称,2维是相应SQL语句*Public Property Let aS

9、QlData(ByRef p_aSQlData)m_aSQlData= p_aSQlDataEnd Property*属性:bIsSave状态:可写类型:数字(0,1)default(1)描述:导出数据时,是否保存为XML文件*Public Property Let bIsSave(ByRef p_bIsSave)m_bIsSave= Cint(p_bIsSave)End Property*属性:bIsOutput状态:可写类型:数字(0,1)default(0)描述:导出数据时,是否显示XML数据*Public Property Let bIsOutput(ByRef p_bIsOutput

10、)m_bIsOutput= Cint(p_bIsOutput)End Property*属性:sSaveFileName状态:可写,可读类型:字符串default(GetRndFileName()描述:导出数据时,如果保存XML数据,XML文件名称*Public Property Let sSaveFileName(ByRef p_sSaveFileName)m_sSaveFileName= p_sSaveFileNameEnd PropertyPublic Property Get sSaveFileName()sSaveFileName= m_sSaveFileNameEnd Proper

11、ty*属性:sSaveFilePath状态:可写,可读类型:字符串default()描述:导出数据时,如果保存XML数据,XML文件路径(相对路径)*Public Property Let sSaveFilePath(ByRef p_sSaveFilePath)m_sSaveFilePath= p_sSaveFilePathEnd PropertyPublic Property Get sSaveFilePath()sSaveFilePath= m_sSaveFilePathEnd Property*属性:sXMLFile状态:可写类型:字符串描述:导入数据时,数据源XML文件(包含相对路径)

12、*Public Property Let sXMLFile(ByRef p_sXMLFile)m_sXMLFile= p_sXMLFileEnd Property*属性:sVacancyCols状态:可写类型:字符串default()格式nID,dDate(以,分隔字段)描述:导入数据时,指定某些字段的值可以不导入(屏蔽字段)*Public Property Let sVacancyCols(ByRef p_sVacancyCols)m_sVacancyCols= , & p_sVacancyCols & ,End Property*属性:nErrCode状态:可读类型:数字 default(

13、0)描述:错误代码,可通过方法GetErrExegesis(ByRef p_nErrCode) 获得注释*Public Property Get nErrCode()nErrCode= m_nErrCodeEnd Property*属性:sEncoding状态:可写类型:字符串default(gb2312)描述:XML文件编码类型*Public Property Let sEncoding(ByRef p_sEncoding)m_sEncoding= p_sEncodingEnd Property*属性:sImportSQL状态:可读类型:字符串default(gb2312)描述:导入数据时,

14、生成的SQL语句*Public Property Get sImportSQL()sImportSQL= m_sImportSQLEnd Property= 属性定义 End =*初始化类*Private Sub Class_Initialize()Server.ScriptTimeout = 1000m_nErrCode_NotErr= 0m_nErrCode_NotArray= 1m_nErrCode_XMLDOM= 2m_nErrCode_ReadData= 3m_nErrCode_WriteData= 4m_nErrCode_Save= 5m_nErrCode_EnsFile= 6m_

15、nErrCode_ErrFile= 7m_bIsSave= 1m_bIsOutput= 0m_sSaveFilePath= m_sSaveFileName= m_sXMLFile= m_sVacancyCols= m_nErrCode= m_nErrCode_NotErrm_sEncoding= gb2312End Sub*注销类*Private Sub Class_Terminate()Set m_oXMLDOM= NothingSet m_oXSLDOM= NothingEnd Sub= 数据导出 Begin =*过程:Export(ByRef p_oDbConn)描述:导出数据参数:p_

16、oDbConn:数据库连接对象*Public Sub Export(ByRef p_oDbConn)Dim nI, nMaxIDim sTableName, sSQLDim sDataXML, sXSLStrDim sXMLStrIf (Not IsArray(m_aSQlData) Thenm_nErrCode= m_nErrCode_NotArrayExit SubEnd IfON ERROR RESUME NEXTSet m_oXSLDOM= Server.CreateObject(Microsoft.XMLDOM)Set m_oXMLDOM= Server.CreateObject(M

17、icrosoft.XMLDOM)If Err.Number 0 Thenm_nErrCode= m_nErrCode_XMLDOMExit SubEnd IfsXSLStr= GetXSL()m_oXMLDOM.async= falsem_oXSLDOM.async= falsem_oXSLDOM.loadxml(sXSLStr)sDataXML= sDataXML= sDataXML & nMaxI= Ubound(m_aSQlData, 1)For nI=0 TonMaxIsTableName= m_aSQlData(nI, 0)If (Len(sTableName) 0) ThensSQ

18、L= m_aSQlData(nI, 1)sXMLStr= GetDataXML(sTableName, sSQL, p_oDbConn)IF (m_nErrCode m_nErrCode_NotErr) ThenExit SubEnd IFsDataXML= sDataXML & sXMLStrEnd IfNextsDataXML= sDataXML & IF (m_bIsOutput) ThenCall ResponseXML(sDataXML)End IFIF (m_bIsSave) ThenCall SaveDataXML(sDataXML)End IFEnd Sub*函数:GetRnd

19、FileName()描述:获得随机名称,由当前时间和7位随机数字构成*Private Function GetRndFileName()Dim nMax, nMinDim sRnd, sDateRandomizenMin= 1000000nMax= 9999999sRnd= Int( ( (nMax - nMin + 1) * Rnd ) + nMin)sDate= Replace( Replace( Replace( now(), -, ) , :, ), , )GetRndFileName= _ & sDate & sRnd & .xmlEnd Function*函数:GetXSL()描述

20、:获得XSL文件字符串*Private Function GetXSL()Dim sXSLStrsXSLStr= sXSLStr= sXSLStr & sXSLStr= sXSLStr & sXSLStr= sXSLStr & sXSLStr= sXSLStr & sXSLStr= sXSLStr & sXSLStr= sXSLStr & sXSLStr= sXSLStr & sXSLStr= sXSLStr & sXSLStr= sXSLStr & sXSLStr= sXSLStr & sXSLStr= sXSLStr & sXSLStr= sXSLStr & sXSLStr= sXSLStr & sXSLStr= sXSLStr & sX

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1