基于XML的多数据库访问方法的研究与应用

来源 :科技创新导报 | 被引量 : 0次 | 上传用户:jisenboss02
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:为实现多个应用系统之间的信息资源共享,该文介绍一种以XML作为媒介将不同的数据库联系起来的的多数据库访问方法。
  关键词:应用系统 共享 多数据库访问
  中图分类号:TP391 文献标识码:A 文章编号:1674-098X(2014)05(a)-0054-02
  现在各种数据库的应用很多,由于技术及时间因素,往往一个部门中并存多个应用系统,这些系统可能分散于不同的网络节点、基于不同的操作平台、使用不同种类的数据库管理系统,且这些子系统封闭运行,自成一体,这样给不同部门的大量的信息资源共享带来困难。在不改变原来系统的内部信息的前提下,为完成不同数据库系统间的数据访问、交换和处理,结合工作实际,该文探索了一种以XML作为将不同的数据库联系起来的媒介的多数据库访问方法。
  1 XML的特性
  XML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized Markup Language,标准通用标记语言)。XML是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用。
  XML的简单使其易于在任何应用程序中读写数据,这使XML很快成为数据交换的唯一公共语言,虽然不同的应用软件也支持其它的数据交换格式,但不久之后他们都将支持XML,那就意味着程序可以更容易的与Windows、Mac OS,Linux以及其他平台下产生的信息结合,然后可以很容易加载XML数据到程序中并分析他,并以XML格式输出结果。
  为了使得SGML显得用户友好,XML重新定义了SGML的一些内部值和参数,去掉了大量的很少用到的功能,这些繁杂的功能使得SGML在设计网站时显得复杂化。XML保留了SGML的结构化功能,这样就使得网站设计者可以定义自己的文档类型,XML同时也推出一种新型文档类型,使得开发者也可以不必定义文档类型。
  2 XML文档结构
  XML文档都由XML序言开始,第一行便是XML序言,。这一行代码会告诉解析器和浏览器,这个文件应该按照前面讨论过的XML规则进行解析。第二行代码,,则是文档元素(document element),它是文件中最外面的标签(我们认为元素(element)是起始标签和结束标签之间的内容)。所有其他的标签必须包含在这个标签之内来组成一个有效的XML文件。XML文件的第二行并不一定要包含文档元素;如果有注释或者其他内容,文档元素可以迟些出现。
  第三行代码是注释,它与HTML中使用的注释风格是一样的。这是XML从SGML中继承的语法元素之一。
  页面再往下的一些地方,可以发现标签里有一些特殊的语法。<![CDATA[ ]] >代码用于表示无需进行解析的文本,允许诸如大于号和小于号之类的特殊字符包含在文本中,而无需担心破坏XML的语法。文本必须出现在<![CDATA[和]] >之间才能合适地避免被解析。这样的文本称为Character Data Section,简称CData Section。
  下面的一行就是<?page render multiple authors ?>
  虽然它看上去很像XML序言,但实际上是一种称为处理指令(processing instruction)的不同类型的语法。处理指令(以下简称PI)的目的是为了给处理页面的程序(例如XML解析器)提供额外的信息。PI通常情况下是没有固定格式的,唯一的要求是紧随第一个问号必须至少有一个字母。在此之后,PI可以包含除了小于号和大于号之外的任何字符串序列。
  3 XML文档的相关操作
  下面用C#语言在服务器同名目录下创建XML文档为例进行说明。
  首先,需要添加命名空间:using System.Xml;
  其次,定义几个公共的对象,以供对XML文档进行操作时使用。
  具体操作如下:
  xmldoc=new XmlDocument( );
  //加入XML的声明段落,<?xml version=”1.0” encoding=”gb2312”?>
  XmlDeclaration xmldecl;
  xmldecl=xmldoc.CreateXmlDeclaration(“1.0”,”gb2312”,null);
  xmldoc.AppendChild(xmldecl);
  //加入一个根元素
  xmlelem=xmldoc.CreateElement (“”,“Employees”,“");
  xmldoc.AppendChild(xmlelem);
  //加入另外一个元素for(int i=1;i<3;i++)
  XmlNode root=xmldoc.SelectSingleNode("Employees");//查找
  XmlElement xe1=xmldoc.CreateElement("Node");//创建一个节点
  xe1.SetAttribute(“genre”,”李计红");//设置该节点genre属性
  xe1.SetAttribute(“ISBN”,”2-3631-4”);//设置该节点ISBN属性   XmlElement xesub1=xmldoc.CreateElement(“title”);
  xesub1.InnerText=”CS从入门到精通";//设置文本节点xe1.AppendChild(xesub1);//添加到节点中
  XmlElement xesub2=xmldoc.CreateElement("author");
  xesub2.InnerText="张军";
  xe1.AppendChild(xesub2);
  XmlElement xesub3=xmldoc.CreateElement("price");
  xesub3.InnerText="58.3";
  xe1.AppendChild(xesub3);
  root.AppendChild(xe1);//添加到节点中}
  //保存创建好的XML文档
  xmldoc.Save(Server.MapPath(“data.xml”));
  结果:在同名目录下生成了名为data.xml的文件。
  4 多数据库访问的实现
  多数据库访问技术的实现,就是借助XML文档作为媒介,将两个异构的数据库联系起来,使得系统能够建立不同的数据库之间的引用关系(图1),达到跨数据库查询的目的。下面通过一个例子来说明多数据库访问的实现。
  例如系统有两个数据库,其中一个数据库中Book表如表1所示。
  另一个数据库中的Author表则只收录了作者的信息,如表2所示。
  这是一个书店信息管理系统和书店图书查阅系统的两个表,书店信息管理系统用来录入并查看书店所有的书信息,而书店的图书查阅系统则用来为到书店买书的客户服务,让客户在电脑终端上按照作者查询书店现有的书籍信息。由于某些原因,这两套系统是在不同的时期而且是不同的软件公司开发的。书店查阅系统的功能就是根据该系统提供的作者列表,客户通过选择其中的某些作者,查出书店中该作者所著的书籍信息。由于书店已经有了书店信息管理系统,所以没必要再查询系统中再建立一个数据库来存放书籍信息,查询系统只需要根据该系统中的作者表,到书店信息管理系统中的书籍信息表(Book)中查询相关信息即可,这里就涉及到了多数据库访问的问题,系统需要在两个不同的数据库之间进行跨数据库的查询和访问。
  运用该文所研究的多数据库访问技术,在书店图书查阅系统中建立一个与Author表相对应的Author.xml文档。
  当用户需要通过作者的姓名(name)进行查询时,系统将数据库表Author中name字段中用户选中的值保存到Author.xml文档相应的节点中,如果用户选择一个作者,则在xml文档中保存一个作者的value值,如果用户选择了多个作者,则在相应的xml文档中保存多个作者的值,分别对应于name节点中的value1,value2等以此类推。
  当书店图书查阅系统数据库Author表中的name字段的值成功保存到xml文档中时,系统会应用该文所述的异质数据库访问方法,将数据库连接切换到书店图书信息管理系统的数据库,并根据从xml文档的相应节点中取出的数据,在书店图书信息管理系统的数据库Book表中进行查询,并返回结果,结果成功返回到用户后,系统又自动将数据库连接接换回书店图书查阅系统本身的数据库。
  参考文献
  [1] 薛心刚.异构数据信息平台集成系统设计与实现[D].吉林大学,2011.
  [2] 王智敏.公路客运异构数据集成系统研究与实现[D].大连海事大学,2011.
  [3] 王彦.面向信息集成的查询转换方法的研究与实现[D].暨南大学,2011.
其他文献
通过测定不同类型的单一及复配型表面活性剂水溶液的临界胶束浓度和表面张力,研究了它对形(甲维盐)=1%微乳剂的性能影响。膦酸酯类阴离子表面活性剂A的临界胶束浓度为1.79&#215;10
近期,江干区城管局、江干区闸弄口街道办事处、闸弄口执法中队、滨和环境建设集团有限公司和濮家联合社区共同开展滨和“爱心日”活动,以“感恩从心开始,让爱温暖彼此”为主
肼配合物易形成环状、笼状以及多聚物等复杂的立体结构,肼配合物中N-N键的断裂,将会释放大量的热,因此是化学气相沉积或热裂解法制备相应立方体氮化物的前驱产物。近几年来出现
随温度升高,丙烯酸甲酯和丙烯酸丁酯的氢甲酰化反应产物中α/β醛的比例无明显变化,但加氢产物增多。而甲基丙烯酸甲酯的加氢产物非常少。三种丙烯酸酯氢甲酰化反应的TOF值排序
烷基多苷(APG)由葡萄糖的半缩醛羟基和脂肪醇羟基在酸催化下失去一分子水而得到,它与常用的阴离子表面活性剂十二烷基苯磺酸钠有相似的功能,其起泡性以及在硬水中的稳定性更
摘 要:雨滴谱的测量研究由来已久,尤其是在最近30年中得到了迅速发展。该文简要回顾了国内外雨滴谱的研究历史以及早期的人工观测方法,并简要介绍了目前国内使用较多的Parsivel激光降水粒子谱仪,分析了其相比于传统观测手段的优势。另外,文中重点分析了雨滴谱的应用,即在雷达测雨方面,可以用来拟合更准确的Z-I关系,提高雷达测雨的准确性,在人工影响天气方面,一方面可用作人工增雨的依据;另一方面可用以检验
甘氨酸是生产氨基酸的基本原料,在食品工业中用作酿造、肉食加工和清凉饮料的配方,是重要的添加剂,其测定方法主要是茚三酮比色法[1]和甲醛法.在醋酸与醋酸钠的缓冲介质中,将
当今,随着工厂的自动化程度越来越高,生产控制中的电脑、PLC、变频器、触摸屏等各种智能工控设备的实时交互性、协同性、可靠性等要求越来越高。笔者在技师学院机电一体化专
2017年2月24日上午,一个寻常的时间,对于我来说,却是一个非常重要和特别的日子,我们“武林大妈”20位代表参加了中国共产党杭州市第十二次代表大会开幕式,聆听了赵一德书记所作的《干在实处走在前列勇立潮头,为加快建设独特韵味别样精彩世界名城而奋斗》工作报告。赵书记演讲前先向观众席一鞠躬,然后向主席台一鞠躬,再走到演讲台作报告。厉害的是前面都是脱稿讲话,这是一种实干精神,只有做过了的事情,才能不用稿
职业教育培养的是生产、服务一线急需的高素质、高技能,具有探索和创新能力的劳动者,职业教育的步伐应该紧跟时代的脚步,从而保证整个市场经济的稳定、高速发展。针对国内现