dbConnections, wann mehrere nutzen?

Installation und Anwendung von Datenbankschnittstellen wie SQLite, PostgreSQL, MySQL, der DB-API 2.0 und sonstigen Datenbanksystemen.
kryz
User
Beiträge: 12
Registriert: Sonntag 3. Februar 2008, 16:55

dbConnections, wann mehrere nutzen?

Beitragvon kryz » Donnerstag 12. März 2009, 12:05

hallo zusammen,

was für unterschiede gibt es, ob ich ein oder mehrere dbConnections benutze? ich habe leider nichts gescheites dazu gefunden.

falls relevant: ich arbeite mit cx_Oracle und einer oracleXE datenbank (im moment noch).
kryz
User
Beiträge: 12
Registriert: Sonntag 3. Februar 2008, 16:55

Beitragvon kryz » Donnerstag 12. März 2009, 19:28

einen unterschied habe ich unterdessen selbst herausgefunden 8) führt man auf connection_1 ein insert statement aus ohne zu commiten, stehen diese daten mit connection_1 bei select-abfragen zur verfügung. bei connection_2 jedoch erst nach dem commit.

gibt es denn noch weitere gründe, mehr als eine connection aufzubauen? oder wie wird das am besten gehandhabt?
Benutzeravatar
Hyperion
Moderator
Beiträge: 7471
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Beitragvon Hyperion » Freitag 13. März 2009, 11:56

kryz hat geschrieben:einen unterschied habe ich unterdessen selbst herausgefunden 8) führt man auf connection_1 ein insert statement aus ohne zu commiten, stehen diese daten mit connection_1 bei select-abfragen zur verfügung. bei connection_2 jedoch erst nach dem commit.

Was ja gerade der Sinn von Transkationen ist ;-)
gibt es denn noch weitere gründe, mehr als eine connection aufzubauen? oder wie wird das am besten gehandhabt?

Ich weiß nicht wie es bei Threads aussieht, aber sollte eine Connection Thread-safe sein, so könnte man in parall ablaufenden Threads jeweils eine eigene Connection nutzen.

In meinen Scripten hat mir immer eine gereicht :-D
Benutzeravatar
ms4py
User
Beiträge: 1178
Registriert: Montag 19. Januar 2009, 09:37

Beitragvon ms4py » Freitag 13. März 2009, 12:09

Hyperion hat geschrieben:Ich weiß nicht wie es bei Threads aussieht, aber sollte eine Connection Thread-safe sein, so könnte man in parall ablaufenden Threads jeweils eine eigene Connection nutzen.


Bei sqlite muss man es so leider machen.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5554
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Telfs (Tirol)
Kontaktdaten:

Beitragvon gerold » Freitag 13. März 2009, 12:20

ice2k3 hat geschrieben:
Hyperion hat geschrieben:Threads jeweils eine eigene Connection nutzen.

Bei sqlite muss man es so leider machen.

Hallo!

Meiner Meinung nach, sollte man auch bei anderen Datenbanken keine Connection threadübergreifend verwenden.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
rayo
User
Beiträge: 773
Registriert: Mittwoch 5. November 2003, 18:06
Wohnort: Schweiz
Kontaktdaten:

Beitragvon rayo » Freitag 13. März 2009, 12:47

ice2k3 hat geschrieben:
Hyperion hat geschrieben:Ich weiß nicht wie es bei Threads aussieht, aber sollte eine Connection Thread-safe sein, so könnte man in parall ablaufenden Threads jeweils eine eigene Connection nutzen.


Bei sqlite muss man es so leider machen.

Für SQLite gibts auch "another python sqlite wrapper". Bei dem kann man, soweit ich weiss von mehreren Threads aus auf eine Connection zugreifen.

http://code.google.com/p/apsw/

Gruss
kryz
User
Beiträge: 12
Registriert: Sonntag 3. Februar 2008, 16:55

Beitragvon kryz » Montag 16. März 2009, 20:32

danke für die antworten. in dem fall muss ich mir um dieses thema keine grossen gedanken mehr machen :D

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder