用XML完全替代数据库是不太现实的。

解决方案 »

  1.   

    我认为没有必要
     xml不是什么都能够做的,它还不是ms写的那几个对象来解析它们的.至于其中的效率是否符合你工程要求,难说.
     如果使用xml实现数据库,难度太大了.sql语句解析.想必工程会用到事务吧,还有事务的解析.....要完成这些基本的工作就有得做了.不仅仅是代码的问题,还有整体规划的问题.
     不可能在一个xml文件中操作吧,跨文件操作又是麻烦事情.怎么说它只是一个载体而已,还有其他的工作要做的.
    既然使用sql server对工程没有多少影响,没有必要在这个问题上多此一举.
    即使重新写数据库也不会使用xml的,会使用自定义的机构化文件格式.唠唠叨叨说了不少,强烈建议楼主不要做这方面的尝试.xml可以辅助数据库操作,数据传输.
      

  2.   

    前些日子 我看了sql 2000对xml的支持依我看来,完全可以用它里面的xpath 语法及xql实现数据库的增、删、查、改 以及数据
    之间的关系定义,执行存储过程,--已经可以用,并且我已经作了个简单的论坛,就像你
    说的那些功能应该是可以实现吧
    首先在www.microsoft.com 上找到sql 2000的xmlupdg 好像是这个冬冬(找本书看看就知道了,时间长了,有点忘了),然后装在sql server上
    利用microsoft sql->在iis中配置sqlxml支持 配置你要执行的虚拟目录
    利用XPath 查询 非常方便,返回的结果都是xml数据,处理起来也非常简单可以参照一下:http://www.microsoft.com/china/technet/prodtechnol/sql/evaluate/featfunc/xmlsql.asp如果你不更新数据,不用安装上面所说的东西,要更新数据的话,就的安装
    最近要期末考试了,所以没有时间继续研究,祝你好运~~`
      

  3.   

    其实SQL Server的结构也是树,这和Xml是一样的,关键是,一个是二进制文件,存储空间小多了。我以前做过数据库,觉得只要时间足够,是可以实现的
      

  4.   

    我感觉用XML完全替代数据库是不太现实的,而且资源消耗太大,时间就是问题呀。。
      

  5.   

    同意孟子的,用XML完全代替SQL Server数据库功能不太现实
      

  6.   

    能把你用XML建表的源代码贴上来看看吗?
      

  7.   

    XML、SQL Server各有其优点
    SQL Server:性能好,实现容易
    XML:跨平台,要用它来实现好像离现实太远了,当然也是可以实现的你要实现添加、删除、存储过程等功能
    基本上就是做一个小型的数据库了
      

  8.   

    一个是效率上不去;一个是安全方面有问题。放弃吧!XML设计的初衷不是这样的……
      

  9.   

    我感觉用XML完全替代数据库是不太现实的
      

  10.   

    支持楼主,,,,,相信楼主有这个能力...............!!!呵呵。
    我想问的是的XML如何如何实现解决并发的?
    ..........
      

  11.   

    Sunmast(速马) 说可以实现?
    学习。。偶就是不懂呀。用纯XML来实现复杂的数据模型!!!!向高手学习!!1
    搬个板凳坐着看^_^
      

  12.   

    CHReich(龙争四舞):
    其实用XML实现一个二维数据库表非常简单。给你一个小例子:
    <?xml version="1.0" encoding="utf-8" ?>
    <!--
    ***********人员信息档案表***********
    *************作者:彭云*************
    *************2003-12-21*************
    -->
    <!--
    **************字段说明**************
    cGZGradeNum:工资类别号
    cPsn_Num:人员编号
    cPsn_Name:人员姓名
    cDept_Num:部门编号
    iPsnGrd_id人员类别编号
    cAccount:帐号
    dInTime:调入时间
    dGZTFTime:工资停发时间
    -->
    <WorkerTable xmlns="http://tempuri.org/WorkerTable.xsd">
    <Worker cGZGradeNum="" cPsn_Num="" cPsn_Name="" cDept_Num="" iPsnGrd_id="" cAccount="" dInTime=""
    dGZTFTime="" cMemo="" bForeign="True" bTaxBx="True" i_id="" iPsnMove="" M1="" M2=""
    M3="" M4="" M5="" M6="" M7="" M8="" M9="" M10="" />
    </WorkerTable>这是一个人员档案信息表的XML构建。你可以通过它自动生成你的XML架构:-)
      

  13.   

    >>>用XML实现一个二维数据库表非常简单agree with net_lover, it is not realistic to do it yourselfconsider, when you have a lot of data, and a lot of tables, how could you do join? load all the xml files in and do XPath?? when XQuery is available, it might help, but the idea of loading all the xml files will make you sick, that said, look intoXML:DB Initiative for XML Databases
    http://www.xmldb.org/
      

  14.   

    嗯,不错。
    当时考虑完成一张表的时候,用XML实现并不复杂。但到后期要进行关联与查询的时候,找不到主意了。所以,我才说是一个“天真”的想法。:-)
    但,在数据传输方面。XML比SQL Server要强得多,还有一点就是在序列化的时候,XML真的比较……
    好处很多,但:(
    郁闷。算了,先休息,明天再想:-)
      

  15.   

    如果真的实现了,那么以后谁还会用数据库?     ORACLE 、 SQL SERVER 统统倒闭! 哈哈~
      

  16.   

    不可能的阿,比如Oracle数据库有触发器,权限管理,磁盘阵列作备份数据库,数据存贮动态优化等等众多的功能,请问XML能实现么?所谓的数据库,也要满足最基本的条件:在大容量数据处理方面,也保证数据库的性能,XML怎么实现呢?
      

  17.   

    不可能完全替代,作为一个数据传输的载体,xml无可挑剔。。但在存储方面呵呵,不说了,楼主自己体会。
      

  18.   

    在大数据量查询,你就知道应该不应该用XML代替数据库。
      

  19.   

    XML适合用于交换数据,不太适合存储数据
      

  20.   

    我也做过类似的功能,XML实现数据库的简单功能可以实现,但效率和资源利用确实不太高,小型文件还可以用(我主要用于传输和交换),呵呵,也许是我的设计不太好呢,支持下,希望高手指点指点。
    我以前看过有一个面向对象的数据库叫cache,格式看起来和xml差不多,用法和普通数据库相似,可以实现存储过程、触发器等数据库高级功能。好像是intersystem公司的产品,大家有兴趣可以研究下。
      

  21.   

    不敢说不能实现,但是XML完全代替SQL Server数据库功能不太现实,并且涉及到文件大小了,权限了触发器了等等问题,应该是特别复杂的。兄弟如果能做好的话,自己拿个专利吧,可以凭此遨游了。
      

  22.   

    我觉得XML的长处是用来作为数据交换的,
    如果完全替代数据库,别的不说,单就执行效率和占用空间,就很难达到要求!!