动态产生XML文档的几种方式
核心提示:XML作为1种可扩大性标记语言,其自描写性使其非常适用于不同利用间的数据交换,而且这类交换是不以预先规定1组数据结构定义为条件,因此具有很强的开放性,具有广阔的利用远景。为了使基于XML的业务数据交换成为可能,就必须实现数据库的XML数据存取,并且将XML数据同
当今世界,技术发展迅猛,不论是甚么行业,大多数关键数据都是放置于数据库中进行治理的,1来目前数据库技术已相当作熟,2来其治理功能非常强大。以往的数据库利用,其数据底层结构1般来讲都是相对固定,也就是说,开发出来的利用程序是针对具体的数据结构,其利用范畴遭到1定限制,开放性较差。
XML作为1种可扩大性标记语言,其自描写性使其非常适用于不同利用间的数据交换,而且这类交换是不以预先规定1组数据结构定义为条件,因此具有很强的开放性,具有广阔的利用远景。为了使基于XML的业务数据交换成为可能,就必须实现数据库的XML数据存取,并且将XML数据同利用程序集成,进而使之同现有的业务规则相结合。开发基于XML的动态利用,如动态信息发布、动态数据交换等,就是要能从数据库中取出数据,并动态产生XML文档。当前动态产生XML文档主要有以下几种方式:
由数据库直接产生 在这1方面,Oracle和Microsoft走在其他厂商的前面。Oracle做为全球第1大数据库及数据库利用解决方案提供厂商,早在1999年就率先推出支持XML的数据库产品Oracle 8i。Microsoft在2000年1月宣称其下1版本SQL Server(代号为Shiloh),将是1个完全支持XML的产品,利用该产品,用户可以在Web浏览器下输进1个URL地址,即可访问SQL Server数据库,而返回的结果可以是1个XML文档。另外,它还答应通过输进样式参数,指定样式信息,以便在浏览器中输出丰富的页面。1个典型的URL以下所示:href = http: // localhost / Northwind ? sql = select + firstname,lastname + from + employees + for + xml + auto。
由Web中间件产生 当Web服务器收到要求,就由中间件进行数据库查询,然后将查询结果转化为XML格式。现在有1些工具提供了XML与数据库的连接进程大都遵守这样的步骤。下面是1个利用ASP直接天生XML文档的例子。
<%@ language="VBScript" %> <% set cConn = Server.CreateObject("ADODB.Connection") call cConn.Open("DSN","USER", "PWD") set rs = cConn.Execute("SELECT DISTINCT * FROM roster") Do While Not rs.EOF %>————下面产生XML———— <% rs.MoveNext Loop rs.Close set rs=nothing set cConn=nothing %> |
这类方式已在大富翁论坛(http://www.delphibbs.com)上得到了利用,大富翁论坛也制作了离线浏览器,实在质就是用ASP查询返回的XML数据文档在利用程序中进行处理。
由其他利用程序产生 正是XML自描写性使其非常适用于不同利用间的数据交换,基于XML数据交换的系统之间交换数据就是1个产生、传输和处理XML文档的进程,因此很多编程工具已发布了支持XML的新版本,在Delphi 6中已推出支持XML数据交换的1系列控件,开发数据交换利用程序已不再是之前大家可看不可及的事了,固然这都回功于XML的出现。
从整体上讲,XML定义了利用间传递数据的结构,而且这类结构的描写不是基于2进制的、只能由程序往判读的代码,而是1种简单的、能够用任何编辑器读取的文本。利用这类机制,程序员可以制定底层数据交换的规范,然后在此基础上开发全部系统的各个模块,而各模块之间传输的数据将是规范的符合既定规则的数据。另外,XML还答应为特定的利用制定特殊的数据格式,并且非常合适于在服务器与服务器之间传送结构化数据。总之,在不久的将来XML势必成为互联网中1颗璀璨的明星。
TAG:数据库,数据,程序,文档,数据结构
评论加载中...
|