我现在想要将mysql数据库中查询的结果以xml文档的形式返回给我,大家有没有好的办法,最好是mysql自带的FUNCTION;如在oracle中就可以
     select DBMS_XMLGEN.GETXML('select * from user') from dual
至于mysql??????在线等待中.......

解决方案 »

  1.   

    如果使用mysql连接的话,按如下方式连接:mysql -uroot -p123qwe -X这样以后所有发出的查询语句都以xml方式返回,如下所示:<?xml version="1.0"?><resultset statement="select * from test;" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <row>
            <field name="caption">testtest</field>
            <field name="memo">chewiafa</field>
      </row>  <row>
            <field name="caption">awewfdf</field>
            <field name="memo">dfafdaf</field>
      </row>  <row>
            <field name="caption">adfafchenw</field>
            <field name="memo">sdfadfaf</field>
      </row>  <row>
            <field name="caption">adfattdafd</field>
            <field name="memo">adfadfa</field>
      </row>
    </resultset>
      

  2.   

    mysql -e "select ..." -X > t.xml
      

  3.   


    这句sql是这样吗?
    mysql -e "select * from user"-X > t.xml  
      执行下来还是有点问题!!
      

  4.   


    我们这个项目要使用fmpp,所有希望能够取出来的数据能够在xml中,你那句sql是在配置文件中吗?
     我现在想在sql语句中实现xml转换,像oracle那种,还是要自己手动写个方法才能够实现啊。
      

  5.   

    还有两种方法.1.在mysql中使用CONCAT和GROUP_CONCAT来拼成xml的格式,优点是比较灵活.SELECT CONCAT(
                   '\n<cities>',
                   GROUP_CONCAT(
                     '\n\t<city name="', name, '" population="', population, '"/>'
                      SEPARATOR ''
                   ),
                   '\n</cities>'
                 ) AS xmldoc
           FROM cities\G
    2.使用mysql的一个扩展:lib_mysqludf_xql这个扩展包含一组用户自定义的函数.具体的地址是:http://www.mysqludf.org/lib_mysqludf_xql/
      

  6.   

    看了下你方法的第一种,有点不行,情况是这样的。至于数据库一张表的属性有那些,我本身并不清楚;比如user表
    能够用select * from user语句,返回如:
    <Result> --跟元素自己定义
    <id>1</id> <name>zhangsan</name><age>10</age>
    <id>2</id> <name>zhang</name><age>20</age>
    <id>3</id> <name>san</name><age>30</age>  注:id和name和age是表的属性,不需要手动添加,而是自动写入xml文件。
    </Result>
      

  7.   

    那就只能安装mysql的扩展了,因为mysql没有内置的xml函数.
      

  8.   

    对啊,起先我们用的oracle嘛,它就有。
       你晓得mysql的那个扩展可以实现不?
      

  9.   

    你看http://www.mysqludf.org/lib_mysqludf_xql/ 有详细的函数介绍.
      

  10.   

    cd C:\Program Files\MySQL\MySQL Server 5.0\bin
    mysql -X -uroot -ptiger -e "use test; select * from user;" > f:\ff/b.xml
    mysql -X -uroot -ptiger -e "use test; select * from user;" > f:\ff/a.xml