zoukankan      html  css  js  c++  java
  • 使用mysqldb从数据库中导出xml

    需要给前端以xml格式提供一些数据,这些数据在目前的数据库中已经存在。

    如果使用django返回xml数据的话,需要包装下头信息:

    r = HttpResponse(str_xml)
    r.mimetype = "text/xml"
    r['Content-Type'] = "application/xml"
    

    另外,使用group by可以使用以下方式来查询。

    objs = Fish.objects.raw("SELECT  id, almanac_name, style , almanac_code,almanac_description FROM ppy_fish WHERE almanac_name != ''  GROUP BY almanac_code")
    

    简单的举个例子:

    # -*- coding: utf-8 -*-
    from xml.dom import minidom
    import MySQLdb
    
    
    conn = MySQLdb.connect(host='localhost', user='root', passwd='xxx', db='my_xml', charset="utf8")
    
    cursor = conn.cursor()
    cursor.execute('select id, name, style, description, family from ppy_fish')
    res_list = cursor.fetchall()
    print len(res_list)
    
    doc =  minidom.Document() 
    root = doc.createElement("data") 
    doc.appendChild(root)
    
    
    ATTRIBUTE = {"n":1, "d":3}
    
    for res in res_list:
        node = doc.createElement(res[2])
        for i in ATTRIBUTE:
            id_node = doc.createElement("%s" % i)
            data = doc.createTextNode("%s" % res[ATTRIBUTE[i]])
            id_node.appendChild(data)
            node.appendChild(id_node)
        root.appendChild(node)
    str_xml = doc.toxml("utf-8")
    
    f = open('fish.xml', 'w')
    f.write(str_xml)
    f.close()
    
    cursor.close()
    conn.close()
    
  • 相关阅读:
    SDNU 1311.Binomial Coeffcients
    SDNU 1306.兑数
    SDNU 1272.SL的秘密
    SDNU 1270.超超的难题
    XCode 自动化打包总结
    Xrun 将 app 转化为 IPA
    mac终端下运行shell脚本
    ios 检测应用程序升级问题
    在iis6.0公布asp.net mvc3网站
    IOS 中 NSArray
  • 原文地址:https://www.cnblogs.com/imouren/p/2094313.html
Copyright © 2011-2022 走看看