Mailinglisten-Archive |
>>>>>>>>>>>>>>>>>> Ursprüngliche Nachricht <<<<<<<<<<<<<<<<<< Am 26.01.00, 16:41:42, schrieb Gloss Mathias <Mathias.Gloss_(at)_start.de> zum Thema AW: Gleichzeitiger Zugriff auf Mysql im WIN-Netz makes trouble: > Hallo Armin, > > ---------- > > Von: Armin Steiner[SMTP:steiner_(at)_dynamic-webpages.de] > > > > Szenario: > > Eingabe Formular, mittels dem man Kundendaten eingeben > > soll. Mittles Abfrage wird überprüft, ob der Eintrag schon > > vorhanden ist oder nicht (wenn ja: Fehler, wenn nein: OK) > > Wenn man aber von zwei Rechnern im WindowsNetzwerk > > gleichzeitig auf die DB zugreift, wird dieser Überprüfungs- > > mechanismus ausgehebelt. Dann sind doppelte Einträge problemlos > > möglich --- GRMBLE-GRRR!!! > > > > > Klar. Das ist kein Bug von MySQL, sondern vom > Datenbank-Programmierer. > Du musst in einer Multiuser-Umgebung IMMER > damit rechnen, daß sich 2 oder mehr user > in die Quere kommen. > Für obiges Szenario musst du : > 1. lock for write setzen > 2. returncode beachten (--> lock tatsaechlich gesetzt ??) > 3. wenn nein zurueck zu 1 (eventuell Versuche zaehlen, um > abzubrechen wenn > 10 lock-Versuche) > 4. lesen in der DB ob Eintrag schon vorhanden > 5. entscheiden was tun > 6. eventuell datensatz schreiben > 7. returncode beachten (--> datensatz tatsaechlich geschrieben ??) > 8. lock freigeben. > Nur so ist das, was du machen moechtest, SICHER moeglich. > Viele Gruesse, Mathias > --- > *** Abmelden von dieser Mailingliste funktioniert per E-Mail > *** an mysql-de-request_(at)_lists.4t2.com mit Betreff/Subject: unsubscribe --- *** Abmelden von dieser Mailingliste funktioniert per E-Mail *** an mysql-de-request_(at)_lists.4t2.com mit Betreff/Subject: unsubscribe
php::bar PHP Wiki - Listenarchive