Servus allerseits
Seit einiger Zeit versuche ich mich in Python einzuarbeiten. Beim
Zugriff auf die DB habe ich Probleme.
Ich schaffe es zwar ein Insert/Update auszuführen. Aber über den
Lösungsweg muss ich selbst den Kopf schütteln.
Ich lese eine Zeile ein, wandle die sqlite3.row in eine Dictionary um
und übergebe das Ganze an eine Form-Klasse.
Dort werden die Werte editiert und als Dictionary wieder zurückgegeben.
Soweit keine Probleme. Probleme habe ich beim zurückschreiben auf die
Datenbank.
Anfaenglich hatte ich Platzhalter eingesetzt, hatte aber komische
Ergebnisse in der Datenbank. Bis ich bemerkte, dass bei der Umwandlung
in eine Dictionary die Reihenfolge willkürlich erfolgt und nichts mit
der Reihenfolge der Table zu tun hat. Also mache ich es z.Zt. so:
1 | cSQL = "Insert into user (valid, name, passwd) Values ("
|
2 | cSQL = cSQL + str(d['valid']) +","
|
3 | cSQL = cSQL + "'" + d['name'] +"',"
|
4 | cSQL = cSQL + "'" + d['passwd'] +"'))"
|
5 | curs.execute(cSQL)
|
Ich habe versucht, die Dictionary in Values und Keys aufzulösen und dann
mit join eine Liste zu erstellen: aber weil auch numerische Werte in
der Dictionary vorhanden sind, gab's Fehler.
Ich hoffe, dass mir jemand einen besseren Lösungsweg zeigen kann.
MfG