Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi MySQL und Datensatz sperren (https://www.delphipraxis.net/2534-mysql-und-datensatz-sperren.html)

stiggi 28. Jan 2003 13:47


MySQL und Datensatz sperren
 
ich wollte mal wissen, was es für Möglichkeiten (unter MySQL) gibt einen Datensatz zu sperren.

das Problem:

- aus einer Tabelle wird ein Datensatz geholt (SELECT), welcher dann bearbeitet wird
- die bearbeiteten Daten werden dann wieder zurückgeschrieben (UPDATE).

Nun will ich verhindern, daß mehrere Leute ein und denselben Datensatz gleichzeitig bearbeiten. Das heisst, wenn ein Bearbeiter sich einen Datensatz geholt hat, dann ist dieser Datensatz für die anderen nicht mehr verfügbar.

Was gibt es da für Lösungsmöglichkeiten?
__________________________________________________ _________________

Nachtrag:

es soll nicht unbedingt über MySQL gelockt werden. Meine erste Idee bis jetzt:

die ID des Datensatzes der gerade bearbeitet wird, wird in eine Extra-Tabelle geschrieben. Nach dem UPDATE wird die ID wieder entfernt und der nächste Datensatz geholt. Alle Datensätze deren ID sich in der Extra-Tabelle befinden sind "gesperrt" und dürfen nicht geholt werden.

hat jemand eine bessere Idee?

stiggi 30. Jan 2003 08:34

keiner eine idee?

Sharky 30. Jan 2003 09:21

Warum möchtest Du es nicht über den Server locken lassen?

Egal.

Das mit der extra Tabelle kannst Du ja so machen. Am besten sicher über einen Trigger.

Dennoch. Es ist immer besser den Server solche Dinge erledigen zu lassen. Dafür ist er ja schließlich da :lol:

CB2206 4. Feb 2003 07:31

Das Locken von Datensätzen ist AFAIK erst ab MySQL 4.0 oder 4.1 möglich.


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:04 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz