IBM最新的数据库,IBM DB2 9,引入了pureXML,一个解决使用XML进行工作的压力的本地XML特性集合。从新的XML数据类型到XQuery语言,DB2 9使得XML开发变得更加容易。
前言
XML不是新概念了。感谢诸如
Ajax这样的新技术,使得它在过去的一些年里发展迅速。但是奇怪的是,到目前为止,数据库却拥有非常少的本地XML特性。
IBM最新的数据库,IBM DB2 9,引入了pureXML,一个解决使用XML进行工作的压力的本地XML特性集合。从新的XML数据类型到XQuery语言,DB2 9使得XML开发变得更加容易。
数据并不会像DBA所想的那样,整齐划一的被整理好,并且像邮箱里的备忘一样标记好。有些时候你遇到了古怪的难以分类的包。必须创建一个特殊域“备注”或“注释”或“杂项”。它们通常是CLOB域,并须足够的长,以容纳可能放进该域的任何文字。
你可以在下面的走查中看到一个例子——一些信息足够标准来波癌症自身的数据栏,而其他信息对每一行都是特别的。这里就不得不提XML数据域的好处了。
CLOB域能容纳任何东西——文字,XML,HTML,自定义描述符。但是对数据库来说,它只是文字。这使得搜索,解析和格式化,以及获取CLOB域中的子数据都比较困难。
然而,XML域将数据作为XML看待,而不是具有括号的数字。那么,你存储在XML域中的数据就是高效可用的了。这就像你在数据表中有一个小的数据表。XML数据可以使用SQL,XMLSQL,XQuery和它们任意的结合来进行搜索。你可以获取特定的数据节点而不是围绕的相关文字或者不相关文字。你甚至可以将它和XML文档关联起来,这种文档每一行都是不同的,使用XSD或者DTD来进行格式化。
这里对你最重要的是,XML数据类型和Ajax以及其他任何可以直接和XML工作的程序一起配合工作。简单的说,它使得令人头痛的基于XML的程序开发变得简单。
本文将逐步教会你如何使用这一高级特性。你首先需要
下载免费分发的DB2 9 Express-C。安装它和最新的DB2 9Visual Studio插件,使用它们来创建一个新的Superhero数据库。在引入范例数据包括一些预写入的XML文档以后,你将在VS2005中创建C# Web服务来展示XML数据类型的优势。最后,你将使用预先写好的代码来创建HTML,JavaScript和CSS。在结束前,你将创建一个可以工作的程序,显示当前的hero花名册,在点击一个Hero时触发异步JavaScript调用Web服务,直接从XML域中获取数据,动态生成新的DOM对象。
这里的技术包括:
- DB2 Express-C
- ASP.NET 2.0 (C#)
- Web 服务
- JavaScript以及Ajax技术
- 用来整理页面显示的CSS