MySQL und Python

Installation und Anwendung von Datenbankschnittstellen wie SQLite, PostgreSQL, MySQL, der DB-API 2.0 und sonstigen Datenbanksystemen.
Antworten
yoxx
User
Beiträge: 8
Registriert: Sonntag 11. September 2005, 20:57

Sonntag 18. September 2005, 01:49

Hallo, wieso muss in Python ein datenbakzugriff deratig kompliziert sein?

INSERT INTO test (spalte) VALUES ('ghjsdf')

geht nicht, wegen dem Hochkomma,

aber auch

INSERT INTO test (spalte) VALUES (\'ghjsdf\')

funktioniert nicht.

Stattdessen hab ich im Netz und auch hier sehr komplizierte Stringaufbauten gefunden, die leider trotzdem nicht bei mir funktionieren. Es heißt ja immer Python ist wegen seiner EInfachheit und der Lesbarkeit so beliebt, aber derartige SQL-Aufbauten sind ja alles andere als leicht lesbar. da bin ich zum ersten mal etwas enttäuscht, wenn ich dagegen PHP sehe ...
henning
User
Beiträge: 274
Registriert: Dienstag 26. Juli 2005, 18:37

Sonntag 18. September 2005, 03:33

yoxx hat geschrieben: INSERT INTO test (spalte) VALUES ('ghjsdf')

geht nicht, wegen dem Hochkomma,
Hab jetzt dein Beispiel konkret nicht getestet, aber derartige SQL-Strings sind für mich noch nie ein Problem gewesen:

Code: Alles auswählen

sql_string = "INSERT INTO test (spalte) VALUES ('ghjsdf')"
aber auch

INSERT INTO test (spalte) VALUES (\'ghjsdf\')
So eine Konstruktion hab ich wirklich noch gar nicht getestet, sollte aber im Grunde auch funktionieren.
Hast du vielleicht eher ein grundsätzliches Problem mit deiner MySQL-Datenbank?
Es heißt ja immer Python ist wegen seiner EInfachheit und der Lesbarkeit so beliebt,
Unter anderem, ja.
aber derartige SQL-Aufbauten sind ja alles andere als leicht lesbar.
Ich weiß ja nicht, was für abgefahrene Konstruktionen du gefunden hast, aber wenn mein Beispiel nicht funktionieren sollte, schicke ich dir morgen (also später heute 8)) gerne "echten" code, den ich auch so einsetze und der ist alles andere als kompliziert, ganz im Gegensatz zu manchen Spagaten, die es in PHP braucht um das ein oder andere Problem zu lösen!

SCNR & HTH
Benutzeravatar
jens
Moderator
Beiträge: 8482
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Sonntag 18. September 2005, 09:09

Das ist wieder das Problem MySQLdb und escapen lassen durch das Modul:
http://www.python-forum.de/viewtopic.php?t=3888

Vielleicht ist mein MySQLdb_wrapper interessant für dich...

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Antworten