Mailinglisten-Archive |
Thomas 'ManiaX' Heller wrote: > > Moin Moin! > > Ich habe vor einiger Zeit (2 Tage ;) mySQL auf meinem Linux Server > installiert und bin recht begeistert. ;) > > Nun bin ich bei meinen Einrichtungen leider auf ein Problem gestoßen. > Und zwar müßte ich eine Tabelle so einrichten das nur EIN Zugriff jeweils > Daten ändern darf. Der eine Prozess (über perlDBI) muss erst vollständig > durchgeführt werden bevor der andere Daten erhält oder ändert. > > Ich habe allerdings keine Idee, geschweige denn Möglichkeit gefunden, > so etwas zu realisieren. > > In Perl gibt es die Möglichkeit über flock(...) bestimmte Datei Handles zu > sperren. > Bietet mySQL eine ähnliche Möglichkeit? > > Da mein Server 100 Zugriffe gleichzeitig zuläßt kommt es sicherlich mal vor > das > der eine was ändert, während ein anderer Prozess auch gerade dabei war ... > > Ich bin für jeden Tip dankbar! > > mfg > Thomas Heller Hallo Thomas Klar gibt es sowas bei mySQL. Du musst in derselben connection, in der Du die Aenderung vornehemen willst zuvor ein: LOCK TABLE tabellenname WRITE, andereTabelle READ,... als SQL - Befehl absetzen, und danach wieder freigeben mit: UNLOCK TABLE Du musst allerdings alle Tabellen angeben, die Du zwischen LOCK und UNLOCK verwendest. Naeheres: manual Kapitel 7.23 LOCK TABLES/UNLOCK TABLES syntax Tschau Christian
php::bar PHP Wiki - Listenarchive