sql lite datenbank mit variablen zum registrieren

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
panzer134
User
Beiträge: 10
Registriert: Freitag 18. März 2011, 17:48

Hi ich programmiere zurzeit eine sql-lite datenbank,
dass problem hierbei ist,dass in meinem buch und allen bisherigen
google-seiten nur beschrieben wird wie ich ein programm machen kann, dass die daten einträgt.
Ich will aber dass das per variablen läuft sodass der nutzer namen&co. einträgt,
und diese daten dann automatisch gespeichert werden.
Hier der code bis jetzt:

Code: Alles auswählen

import sqlite3

# Verbindung zur Datenbank erzeugen
connection = sqlite3.connect("Spiel.db")

# Datensatzcursor erzeugen
cursor = connection.cursor()

print("Spitzname")
spitzname=input()
print("Passwort")
pw=input()
print("gebrtstag")
gb=input()

# Datensatz erzeugen
sql = "INSERT INTO personen VALUES('Maier', " \
      "'Hans', 100, 1, '15.03.1962')"
cursor.execute(sql)
connection.commit()

Vielen dank für nützliche antworten schon mal im voraus
mfg.panzer134
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Benutzt Du Python 3.x? Wenn ja, ist alles ok, wenn nein, dann benutze `raw_input` statt `input`. Dass Du `print` als Funktion verwendest, spricht für Python3; es gibt hier jedoch immer mal wieder User, die das auch in Python2.x fälschlicherweise verwenden.

Welches Buch benutzt Du denn? Ich kann mir nicht vorstellen, dass in einem Kapitel / Abschnitt zu SQLite nicht besprochen wird, wie man solche "variablen" Queries konstruiert. Davon abgesehen gibt es ja die sehr gute Python-Doku, die immer Anlaufpunkt sein sollte. Desweiteren finde ich die Seite von Doug Hellmann immer gut.

Darüber hinaus ist eine Suche in diesem Forum auch immer nützlich. Da ist das schon zig Mal besprochen worden ;-)
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
panzer134
User
Beiträge: 10
Registriert: Freitag 18. März 2011, 17:48

hm ich habe eig. ziemlich lange gesucht.(gestern die halbe nacht)
Kannst du trotzdem schnell schreiben wie ichs machen soll?
ja ich benutz python 3.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

panzer134 hat geschrieben: Kannst du trotzdem schnell schreiben wie ichs machen soll?
In der Doku zu SQLite beginnt das doch bereits im 6. Absatz! Das wirst Du doch mal schnell selber lesen können, oder? ;-)
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
panzer134
User
Beiträge: 10
Registriert: Freitag 18. März 2011, 17:48

mein englisch ist ziemlich misserabel :D
aba ich probiers grad zu übersetzten
panzer134
User
Beiträge: 10
Registriert: Freitag 18. März 2011, 17:48

ok ich blicks ned kennt jdn. ne deutsche seite oda kann(ich bin wohl zu dämlich) jdn. schnell meinen code dementsprechend ändern?
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Ich kopier dir dann mal den besagten Absatz... :)

Code: Alles auswählen

# Never do this -- insecure!
symbol = 'IBM'
c.execute("... where symbol = '%s'" % symbol)

# Do this instead
t = (symbol,)
c.execute('select * from stocks where symbol=?', t)

# Larger example
for t in [('2006-03-28', 'BUY', 'IBM', 1000, 45.00),
          ('2006-04-05', 'BUY', 'MSOFT', 1000, 72.00),
          ('2006-04-06', 'SELL', 'IBM', 500, 53.00),
         ]:
    c.execute('insert into stocks values (?,?,?,?,?)', t)
Du musst halt Fragezeichen verwenden.

Ich hoffe mal, dass du zumindest die Kommentare übersetzen kannst...
panzer134
User
Beiträge: 10
Registriert: Freitag 18. März 2011, 17:48

ich blicks immer noch nicht!
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Dann solltest du - bei allem Respekt - schon fast überlegen, ob Programmierung wirklich das Richtige für dich ist...
panzer134
User
Beiträge: 10
Registriert: Freitag 18. März 2011, 17:48

hm,ich fang auch gerade erst mit python an.
Und da du die programmiersprache wohl scheinbar beherschst könntest du doch bitte mal den quelltext dementsprechend ändern.
Dann würde ich auch sicher verstehen was ich falsch mache(bzw. nicht verstehe).
Mir tut es auch leid wenn ich euch eure zeit stehle,aber ich verzweifle gerade echt und komm nicht weiter. :K
BlackJack

@panzer134: Vielleicht solltest Du dann nicht gerade mit Datenbankprogrammierung anfangen. In diesem Fall musst Du dann nämlich auch noch die Abfragesprache SQL, den Entwurf von relationalen Datenbanken, und die englische, technische Dokumentation für eine Anbindung von Python an relationale Datenbanken *zusätzlich* zu Python lernen.
Bats
User
Beiträge: 11
Registriert: Dienstag 20. September 2011, 09:28

Am besten verwendest du http://www.sqlalchemy.org/.
lunar

@Bats: SQLAlchemy wird niemandem helfen, der nach eigener Aussage kein Englisch versteht, und offensichtlich nicht einmal in der Lage ist, Werte durch Fragezeichen zu ersetzen…
Antworten