Native-XML Database --Xindice 廖逸
为什么需要Xml数据库? Xml 已经得到广泛应用。 在数据库领域,许多关系数据库系统提供了存储Xml文件的功能。 但是……
为什么需要Xml数据库? 关系数据库仅提供对Xml文件本身进行存储或者读取的功能,并不能从 DOM 树检索部分文档或节点。 为了扩展功能(如 Query 和 Update),我们可以考虑 Native-xml数据库,而Xindice是一个不错的开源Native-xml数据库系统。
Xindice简介 Xindice是由Apache公司建立的一个开源项目,是一个设计用来存储和查询XML数据的数据库服务器,进出Xindice服务器的所有数据都XML。 Xindice使用的查询语言是XPath,使用的更新语言是XML:DB XUpdate。
Xindice安装 安装Tomcat。 下载xml-xindice-1.1-bin.zip,解压到任意目录,将解压出来的xindice-1.1.war文件拷贝到Tomcat中webapps目录下,并重命名为xindice.war。 下载站点:http://xml.apache.org/xindice/download.cgi
Xindice命令(1)--add_collection 创建一个集合,相当于关系数据库中的database。 xindice add_collection -c -n Example: xindice ac -c xmldb:xindice://localhost:8080/db -n booksdb
Xindice命令(2)--list_collections 查询所有集合 xindice list_collections -c Example: xindice lc -c xmldb:xindice://localhost:8080/db
Xindice命令(3)--add_document xindice add_document -c -f -n Example: xindice ad -c xmldb:xindice://localhost:8080/db/booksdb -f D:\xml-xindice-1.1\xml\books.xml -n books
Xindice命令(4)--list_documents xindice list_documents -c Example: xindice ld -c xmldb:xindice://localhost:8080/db/booksdb
Xindice命令(5)--query 罗列Documents中符合查询条件的数据条目。 xindice xpath -c -q Example1: xindice xpath -c xmldb:xindice://localhost:8080/db/booksdb -q "//books/book" Example1: xindice xpath -c xmldb:xindice://localhost:8080/db/booksdb -q "//books/book[date='2006-4-8']"
Xindice命令(6)--index 创建索引。 xindice add_indexer -c -n -p --pagesize --maxkeysize -t Example1: xindice xpath -c xmldb:xindice://localhost:8080/db/booksdb -q "//books/book" Example1: xindice ai -c xmldb:xindice://localhost:8080/db/booksdb -n books -p book
XML:DB API with two demos Demo1:query Demo2:update
The end, thanks! Q&A