Seite 1 von 1

python3.1, sqlite insert dictionary

Verfasst: Montag 24. Oktober 2011, 19:32
von torres
Hallo,

ich moechte Dictionaries in eine sqlite Tabelle mit insert schreiben.
(wurde schonmal hier besprochen: http://www.python-forum.de/viewtopic.ph ... te#p189200)

Das schaut nun recht haesslich aus:

Code: Alles auswählen

daten1 = { 'name':'anna', 
           'blume':'magerite',
           'stadt':'ulm', 
           'foo':'nana',
           'auto':'bmw',
           'tier':'elefant',
}
 
sql = "insert into y4 ("+",".join(daten1.keys())+") values ("+":"+",:".join(daten1.keys())+")"
print(sql)  # insert into y4 (blume,name,auto,stadt,tier,foo) values (:blume,:name,:auto,:stadt,:tier,:foo)
sqlDB.execute(sql, daten1)
sqlDB.commit()
Hier meine Frage:
Koennte man das nicht schoener, oder geschmeidiger umsetzen?

Viele Gruesse,
Torres

Re: python3.1, sqlite insert dictionary

Verfasst: Montag 24. Oktober 2011, 19:36
von Dauerbaustelle
Wie wärs mit nem ORM?

Re: python3.1, sqlite insert dictionary

Verfasst: Montag 24. Oktober 2011, 19:41
von torres
Dauerbaustelle hat geschrieben:Wie wärs mit nem ORM?
Orm? Kenne ich nur von Hildegunst von Mythenmetz (Walter Moers)??
:shock:

Re: python3.1, sqlite insert dictionary

Verfasst: Montag 24. Oktober 2011, 19:47
von Dauerbaustelle

Re: python3.1, sqlite insert dictionary

Verfasst: Montag 24. Oktober 2011, 20:02
von torres
Danke fuer den Link!
Leider muss ich mich auf das beschraenken, was es mit der Python Standard Library gibt.

Gruss,
Torres

Re: python3.1, sqlite insert dictionary

Verfasst: Montag 24. Oktober 2011, 20:24
von Dauerbaustelle
Wieso?

Re: python3.1, sqlite insert dictionary

Verfasst: Montag 24. Oktober 2011, 22:20
von deets
@torres

Selbst wenn du - aus esoterischen Gruenden - keine Pakete von Drittherstellern einspielen kannst, kannst du immer noch SQLAlchemy als Source entpacken und zum Teil deines Projektes machen. Eine Entschuldigung es nicht zu verwenden gibt es also nicht wirklich.

Re: python3.1, sqlite insert dictionary

Verfasst: Montag 24. Oktober 2011, 22:48
von torres
deets hat geschrieben:@torres

Selbst wenn du - aus esoterischen Gruenden -
*LOL*
Also gut, ich schaue es mir an, allerdings kann ich es hier wirklich nicht verwenden,
aber vielleicht spaeter irgendwann mal fuer ein anderes Script.

Viele Gruesse,
Torres

Re: python3.1, sqlite insert dictionary

Verfasst: Montag 24. Oktober 2011, 22:53
von DasIch
Deine "Lösung" erlaubt SQL Injection Angriffe.

Verwende einfach SQLAlchemy. Es gibt wirklich keine guten Gründe nicht eine Abhängigkeit zu haben.

Re: python3.1, sqlite insert dictionary

Verfasst: Montag 24. Oktober 2011, 23:08
von deets
torres hat geschrieben: Also gut, ich schaue es mir an, allerdings kann ich es hier wirklich nicht verwenden,
aber vielleicht spaeter irgendwann mal fuer ein anderes Script.
Wieso nicht? Eine Behauptung zu wiederholen belegt sie ja noch lange nicht...