以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XML基础 』  (http://bbs.xml.org.cn/list.asp?boardid=1)
----  请问XML有没有数据库引擎  (http://bbs.xml.org.cn/dispbbs.asp?boardid=1&rootid=&id=57286)


--  作者:tinyqueen
--  发布时间:12/27/2007 8:29:00 PM

--  请问XML有没有数据库引擎
请问XML有没有数据库引擎


初识XML数据库
大家给简单介绍一些
原理
我的问题是
请问XML有没有数据库引擎
还是XML嵌在宿主语言里面
就表示已经存储在数据库了
应该怎么理解
还是XML和其他数据库一样
具有引擎
然后存储在专门的地方
谢谢


--  作者:enyaxp
--  发布时间:12/27/2007 9:33:00 PM

--  
XML是一种层次型数据格式,和原始的结构化数据格式相比,他能够存储的数据更加多样,这样也使其成为各种复杂的异构数据交换的核心技术和未来数据定义的标准格式。

现在主流的数据库都逐渐开始支持XML格式数据的直接存储和查询,每种数据库都有其特有的开发工具(XDK)来解析和管理xml型数据,存储方式也逐渐由在原有关系性数据库中生成xml型数据类型到以一个独立的方式存储在XMLDB数据库中,也就是Native XML。

另外很重要的一点就是XML数据的查询,早期的xml数据库是采用SQL访问关系型数据库获取其中存储的xml数据,而现在则更多的引入Xquery以及面向对象的查询方式。

刚接触不妨尝试着自己写一些xml解析及存入数据库的程序,一方面可以了解xml的一些基本概念,另一方面也可以体会一些比较底层的xml数据库概念。


--  作者:tinyqueen
--  发布时间:12/28/2007 10:27:00 AM

--  
那么请问同学
mysql支持XML吗?
怎么支持
谢谢
我实在是什么都不会
谢谢您了
--  作者:enyaxp
--  发布时间:12/28/2007 4:41:00 PM

--  
很遗憾,MySQL不支持XML格式的数据,你得自己将XML中的数据解析出后再写入MySQL数据库。
--  作者:enyaxp
--  发布时间:12/28/2007 4:47:00 PM

--  
解决的方法一般是用php编程存取MySQL中的数据,也有些软件如MySQL to XML convert 可以帮助你将MySQL中的数据转为XML.
--  作者:tinyqueen
--  发布时间:12/28/2007 5:13:00 PM

--  
我在书上看到XML和数据库的关联存储可以通过数据库结构话的管理XML数据库
那么
就是说
mysql和XML可以在同一个系统中使用
用mysql来存储一般的结构化信息
用XML来存储非结构化信息
然后我用MYSQL对XML数据库进行索引管理
可以吗
这是我自己瞎想的
不对的地方
请多多包涵
谢谢同学的热情回帖
方便的话希望能加您为好友
谢谢您
--  作者:enyaxp
--  发布时间:12/28/2007 5:36:00 PM

--  
MySQL确实可以存储XML的结构化信息,但是如果没有一个支持管理XML的数据库的话是没办法对XML中的元素进行查询的。
--  作者:enyaxp
--  发布时间:12/28/2007 5:39:00 PM

--  
XML型数据库的很重要的功能就是能利用XPath、XQuery等技术支持对XML格式数据元素的直接访问,当然,效率上还无法和关系型数据库的SQL查找效率相比。
--  作者:tinyqueen
--  发布时间:12/28/2007 5:46:00 PM

--  
那您的意思是那个mysql不能对XML进行管理了?
那么XML可以自己对自己进行管理吗
我在系统中建立2种数据库
一个是mysql
另一个是XML不晓得可以吧
然后分开管理
XML就用您说的那些东西进行管理访问
而宿主语言
我就用php
不知道可以不

--  作者:enyaxp
--  发布时间:12/28/2007 5:58:00 PM

--  
首先XML只是一种数据存放格式,和MySQL这种可以对内部的数据表进行管理和维护的数据库是两种完全不同的东西。

MySQL暂不支持对XML格式的数据进行管理,需要借助其他软件实现xml型数据格式和关系型数据格式之间的转化。

如果你所用的数据库就定为MySQL的话,需要对XML中的数据提取后存入MySQL,才能对这些数据进行排序查找等操作;如果可能的话最好使用一些支持XML格式的数据库。


--  作者:tinyqueen
--  发布时间:12/28/2007 6:12:00 PM

--  
呵呵
谢谢
您的回答
祝您新年愉快
要是有问题
我在来发帖子请教您
谢谢您啦
您会万福的
--  作者:tinyqueen
--  发布时间:1/2/2008 9:44:00 PM

--  
偶又有新的思路了
就是在php语言中嵌入XML语言
XML语言中的树状结构来存储信息
这样在搜索的时候
就搜索XML中的元数据
是吧
--  作者:tinyqueen
--  发布时间:1/4/2008 5:30:00 PM

--  
这里面会牵扯到元数据吗
就是那XML存储的是元数据吗
元数据我理解的是tag之间包涵的那些内容
对不对

我们在对信息检索的时候
就直接检索元数据
根据元数据查询
这样理解对不对
大家帮帮忙
谢谢啦

--  作者:tinyqueen
--  发布时间:1/4/2008 7:18:00 PM

--  
没有人理偶呀

--  作者:enyaxp
--  发布时间:1/4/2008 11:26:00 PM

--  
php嵌入xml?不知道怎么实现,只能说php可以处理XML数据,并且他与数据库结合的非常好,可以尝试用php构建XML与数据库之间的转换引擎。

另外作为查询主体,描述这个主体的一切数据都可以称为元数据。比如想查一本书,那么描述这本书的如题目,作者名,出版社名,出版日期,版次等数据都是元数据,这些当然是要存在XML文件中,并且需要由数据库对其进行管理。查询的时候也是通过这些元数据来找到查询主体的。


--  作者:tinyqueen
--  发布时间:1/7/2008 9:58:00 AM

--  

我似乎之前理解错误了,
看了您的回复
我是这样理解的:
XML文件是自己单独存储的,
并不放在任何宿主语言里面(我讲的宿主语言是系统的框架语言,我用php),
而数据库对XML文件进行管理(若选用MYSQL,那么MYSQL就管理XML文件,)
然后PHP和MYSQL进行交互的时候
也就管理了XML文件
不晓得是不是这样的!
还有
那个MYSQL不能管理XML文件怎么办?
--  作者:enyaxp
--  发布时间:1/7/2008 12:52:00 PM

--  
是这样的。

MySQL确实不支持对XML格式数据的直接操作和管理。可以尝试使用其他支持XML的数据库,开源的支持XML的数据库有很多;另外如果一定要用MySQL的话,就要写解析程序将XML中的数据导入DB进行管理。


--  作者:tinyqueen
--  发布时间:1/7/2008 1:31:00 PM

--  
“一定要用MySQL的话,就要写解析程序将XML中的数据导入DB进行管理。”
我必须选用MYSQL
我是这样想的
就是
用php写XML文件的解析程序,解析之后MYSQL就能管理XML了
那么解析是做什么呢
大概讲讲吧
还有解析之后怎样管理呢
和元数据又有关系了吧
把元数据放到MYSQL数据库中的字段里面吗?
我要做的是对学习内容进行管理
内容有文档
音频
视频
网站等等
那么我在管理内容的时候应该能用到XML吧
不用可以吗
用有什么好处
谢谢您
谢谢您

--  作者:enyaxp
--  发布时间:1/7/2008 3:14:00 PM

--  
XML解析是利用某种模式将XML格式文档中保存数据的部分(元素值属性值等)提取出来,一般以SAX及DOM模式为主,每一种模式在不同的开发语言中实现的方法是不同的,但是原理则是相通的。
在php中有三个XML解析器,即一个基于Expat C的事件驱动型解析器;一个基于DOM的解析器和一个适合解析简单XML文件的解析器(simpleXML)。推荐使用DOM解析器,相关的资料有很多,可以去网上查找。
解析以后就首先让php创建数据库连接,然后将解析出的结果利用SQL语言导入MySQL进行存储和管理,当然还需要利用范式完成数据库设计。
你所说的那些学习内容虽然形式多种多样,但是终究只要能够管理好这些文件的绝对路径或者URL就好了,所以应用XML对这些内容进行管理是可行的而且是必要的。
--  作者:tinyqueen
--  发布时间:1/8/2008 9:07:00 AM

--  
非常感谢您的回复
受益匪浅呀
呵呵
--  作者:ianzhen
--  发布时间:1/9/2008 7:37:00 PM

--  
看了之后越来越觉得要努力了~
--  作者:tinyqueen
--  发布时间:1/10/2008 10:35:00 AM

--  
是的
什么也不会我
很悲惨呀
大家积极讨论啊
共同进步
--  作者:tak
--  发布时间:1/12/2008 2:42:00 AM

--  
连接上数据库,能在相应的控键中显示数据库的内容,然后通过建立一个后台,运用SQL那四条语句对前台中的数据进行查加改
--  作者:enyaxp
--  发布时间:1/12/2008 6:10:00 PM

--  
多到论坛来讨论,相互提高吧。
--  作者:enyaxp
--  发布时间:1/12/2008 6:18:00 PM

--  
这和XML数据库无关吧?
你所说的是操作管理数据库的一般步骤。
在大部分情况下数据库作为系统的后台需要封装为用户不可见,所以控件什么的是不需要的,SQL语句也是通过定义为宏管理在后台代码中,而且远不止四条。

以下是引用tak在2008-1-12 2:42:00的发言:
连接上数据库,能在相应的控键中显示数据库的内容,然后通过建立一个后台,运用SQL那四条语句对前台中的数据进行查加改


--  作者:tinyqueen
--  发布时间:1/14/2008 10:28:00 AM

--  
谢谢大家的帮助
呵呵


--  作者:guoyanhong
--  发布时间:5/14/2008 7:49:00 PM

--  
请问一下,用JAVA语言编写对XML数据管理是什么以回事呢?
是不是首先要建立一张二维表,然后是怎么管理呢
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
140.625ms