Hi,
gibt es in Python Befehle zum Eröffnen und Beenden einer Transaktion?
Zur Zeit arbeite ich nur nach diesem Schema:
DB-Connect herstellen
try-Block mit DB-Anweisungen und commit
except-Blcok mit Fehlermeldung und rollback
DB-Connect schließen
Transaction für Oracle-DB
-
- User
- Beiträge: 6
- Registriert: Dienstag 26. November 2002, 22:15
- Wohnort: Zürich
ist das commit() nicht sowas, das der DB mitteilt, dass nun 1 transaktion abgeschlossen sei ?
Soweit ich es jetzt mitbekommen habe, wird die Transaktion bei Python automatisch eingeleitet und beendet. Bei meinem Beispiel
dbh = ocidb.ocidb(connectstring)
cu = dbh.cursor()
try:
cu.execute(stmt)
...
cu.execute('commit')
except:
...
cu.execute('rollback')
bin ich nur nicht sicher, ob das bei cu = dbh.cursor oder mit cu.execute(stmt) erfolgt. Beendet wird die Transaktion, wie du schon meintest, mit execute('commit') bzw. ('rollback').
Ich hab mich nur gewundert, weil bei anderen Sprachen direkt begin.transaction oder ähnlich angegeben werden muß/sollte, bevor man ein execute machen kann.
dbh = ocidb.ocidb(connectstring)
cu = dbh.cursor()
try:
cu.execute(stmt)
...
cu.execute('commit')
except:
...
cu.execute('rollback')
bin ich nur nicht sicher, ob das bei cu = dbh.cursor oder mit cu.execute(stmt) erfolgt. Beendet wird die Transaktion, wie du schon meintest, mit execute('commit') bzw. ('rollback').
Ich hab mich nur gewundert, weil bei anderen Sprachen direkt begin.transaction oder ähnlich angegeben werden muß/sollte, bevor man ein execute machen kann.
CU dzu