[Python-de] XML-Datei aus MySQL erzeugen!

Gerhard Häring gh at ghaering.de
Die Aug 19 18:15:17 EDT 2003


Klinger Christian wrote:
> Hallo Liste!
> 
> Ich würde gerne SQL-Abfragen aus einer MySQL DB in 
> neue XML-Datein schreiben.
> 
> Die Abfragen aus MySQL sind kein Problem!
> 
> Wie erzeuge ich am besten aus den Ergebniss 
> der Abfrage eine XML-Datei? [...]

Schnellschuss (enumerate braucht Python 2.3):

import sqlite

def quote(s):
     # TODO quoting von speziellen Zeichen
     return '"%s"' % s

def resultset2xml(cursor):
     res = cursor.fetchall()
     l = []
     for row in res:
         l.append("<row %s/>" %
             " ".join(
                 ["%s=%s" % (cursor.description[idx][0], quote(val)) for 
(idx, val) in enumerate(row)]
                 ))
     return "\n".join(l)

cx = sqlite.connect("db")
cu = cx.cursor()
cu.execute("select a, b, c from test")
print resultset2xml(cu)

-- Gerhard