You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
bei denen die Ausfallsicherung zum Tragen kommen soll, falls die Vorgabe
315
315
(OperationalError, InternalError) nicht geeignet sein sollte</p>
316
316
</li>
317
+
<li><pclass="first"><ttclass="docutils literal">ping</tt>: mit diesem Parameter kann eingestellt werden, wann Verbindungen
318
+
mit der <ttclass="docutils literal">ping()</tt>-Methode geprüft werden, falls eine solche vorhanden ist
319
+
(<ttclass="docutils literal">0</tt> = <ttclass="docutils literal">None</tt> = nie, <ttclass="docutils literal">1</tt> = Standardwert = immer wenn neu angefragt,
320
+
<ttclass="docutils literal">2</tt> = vor Erzeugen eines Cursors, <ttclass="docutils literal">4</tt> = vor dem Ausführen von Abfragen,
321
+
<ttclass="docutils literal">7</tt> = immer, und alle Bitkombinationen dieser Werte)</p>
322
+
</li>
317
323
<li><pclass="first"><ttclass="docutils literal">closeable</tt>: wenn dies auf <ttclass="docutils literal">True</tt> gesetzt wird, dann wird das Schließen
318
324
von Verbindungen erlaubt, normalerweise wird es jedoch ignoriert</p>
319
325
</li>
@@ -350,10 +356,16 @@ <h2>PersistentDB</h2>
350
356
Stattdessen wird die Verbindung automatisch dann geschlossen, wenn der Thread
351
357
endet. Sie können dieses Verhalten ändern, indem Sie den Parameter namens
<p>Beachten Sie, dass das Holen einer Verbindung etwas beschleunigt werden kann,
354
-
indem Sie den Parameter <ttclass="docutils literal">threadlocal</tt> auf <ttclass="docutils literal">threading.local</tt> setzen; dies
355
-
könnte aber in einigen Umgebungen nicht funktionieren (es ist zum Beispiel
356
-
bekannt, dass <ttclass="docutils literal">mod_wsgi</tt> hier Probleme bereitet, da es Daten, die mit <ttclass="docutils literal">threading.local</tt> gespeichert wurden, zwischen Requests löscht).</p>
359
+
<p>Bitte beachten Sie, dass Transaktionen explizit durch Aufruf der Methode
360
+
<ttclass="docutils literal">begin()</tt> eingeleiten werden müssen. Hierdurch wird sichergestellt, dass
361
+
das transparente Neueröffnen von Verbindungen bis zum Ende der Transaktion
362
+
ausgesetzt wird, und dass die Verbindung zurückgerollt wird, before sie vom
363
+
gleichen Thread erneut benutzt wird.</p>
364
+
<p>Das Holen einer Verbindung kann etwas beschleunigt werden, indem man den
365
+
Parameter <ttclass="docutils literal">threadlocal</tt> auf <ttclass="docutils literal">threading.local</tt> setzt; dies könnte aber in
366
+
einigen Umgebungen nicht funktionieren (es ist zum Beispiel bekannt, dass
367
+
<ttclass="docutils literal">mod_wsgi</tt> hier Probleme bereitet, da es Daten, die mit <ttclass="docutils literal">threading.local</tt>
368
+
gespeichert wurden, zwischen Requests löscht).</p>
357
369
</div>
358
370
<divclass="section" id="id2">
359
371
<h2>PooledDB</h2>
@@ -397,10 +409,21 @@ <h2>PooledDB</h2>
397
409
<li><pclass="first"><ttclass="docutils literal">setsession</tt>: eine optionale Liste von SQL-Befehlen zur Initialisierung
398
410
der Datenbanksitzung, z.B. <ttclass="docutils literal">["set datestyle to german", <spanclass="pre">...]</span></tt></p>
399
411
</li>
412
+
<li><pclass="first"><ttclass="docutils literal">reset</tt>: wie Verbindungen zurückgesetzt werden sollen, bevor sie wieder
413
+
in den Verbindungspool zurückgegeben werden (<ttclass="docutils literal">False</tt> oder <ttclass="docutils literal">None</tt>
414
+
um mit <ttclass="docutils literal">begin()</tt> gestartete Transaktionen zurückzurollen, der Standardwert
415
+
<ttclass="docutils literal">True</tt> rollt sicherheitshalber mögliche Transaktionen immer zurück)</p>
416
+
</li>
400
417
<li><pclass="first"><ttclass="docutils literal">failures</tt>: eine optionale Exception-Klasse oder ein Tupel von Exceptions
401
418
bei denen die Ausfallsicherung zum Tragen kommen soll, falls die Vorgabe
402
419
(OperationalError, InternalError) nicht geeignet sein sollte</p>
403
420
</li>
421
+
<li><pclass="first"><ttclass="docutils literal">ping</tt>: mit diesem Parameter kann eingestellt werden, wann Verbindungen
422
+
mit der <ttclass="docutils literal">ping()</tt>-Methode geprüft werden, falls eine solche vorhanden ist
423
+
(<ttclass="docutils literal">0</tt> = <ttclass="docutils literal">None</tt> = nie, <ttclass="docutils literal">1</tt> = Standardwert = immer wenn neu angefragt,
424
+
<ttclass="docutils literal">2</tt> = vor Erzeugen eines Cursors, <ttclass="docutils literal">4</tt> = vor dem Ausführen von Abfragen,
425
+
<ttclass="docutils literal">7</tt> = immer, und alle Bitkombinationen dieser Werte)</p>
426
+
</li>
404
427
<li><pclass="first">Die als <ttclass="docutils literal">creator</tt> angegebene Funktion oder die Funktion <ttclass="docutils literal">connect</tt>
405
428
des DB-API-2-Datenbankadapter-Moduls erhalten alle weiteren Parameter,
406
429
wie <ttclass="docutils literal">host</tt>, <ttclass="docutils literal">database</tt>, <ttclass="docutils literal">user</tt>, <ttclass="docutils literal">password</tt> usw. Sie können einige
@@ -455,6 +478,12 @@ <h2>PooledDB</h2>
455
478
cur.close() # oder del cur
456
479
db.close() # oder del db
457
480
</pre>
481
+
<p>Bitte beachten Sie, dass Transaktionen explizit durch Aufruf der Methode
482
+
<ttclass="docutils literal">begin()</tt> eingeleiten werden müssen. Hierdurch wird sichergestellt,
483
+
dass die Verbindung nicht mehr mit anderen Threads geteilt wird, dass das
484
+
transparente Neueröffnen von Verbindungen bis zum Ende der Transaktion
485
+
ausgesetzt wird, und dass die Verbindung zurückgerollt wird, bevor sie
486
+
wieder an den Verbindungspool zurückgegeben wird.</p>
0 commit comments