TS: Rechteverwaltung, Update & Select binden

Beitrag lesen

Hallo Rolf,

Was Du da beschreibst, klingt nach einer Transaktion. InnoDB unterstützt das. Schau Dir dazu auch den Isolation Level für die Transaktion an, damit Du sicher bist, dass die für deinen Zweck richtigen Sperren gesetzt werden.

Genau das meinte ich.

Pseudocode:

BEGIN TRANSACTION
UPDATE blablabla
IF erfolgreich
   SELECT blablabla
   COMMIT
ELSE
   ROLLBACK
ENDIF

Transaktionen kannst Du auch in einer Stored Procedure durchführen. Ohne Transaktion sind meines Wissens nur die einzelnen Statements atomar.

Diesen Fehler wollte ich ausmerzen. Die Raceconndition wäre an dieser Stelle zwar nicht tödlich, könnte aber doch zu lästigen "whitescreens" führen.

Infos z.B. hier.

Bleibt jetzt nur die Frage, wie sehr eine Transaktion die Datenbank bremst. Im "is-logged"-Modus würde die bei jedem Request jedes Users ausgelöst werden.

Danke für deine Unterstützung. Nun bin ich doch endlich mal wieder ein Stück weitergekommen ;-)

Grüße
TS

--
es wachse der Freifunk
http://freifunk-oberharz.de