N
nibel
Doppel-As
Hallo Gemeinde,
ich bin gerade dabei hier eine Software in PHP für telefonische Kundenbefragungen zu erweitern, der verwendete DB-Server ist Mysql:
Konkret geht es um die Zugriffe auf die einzelnen Kundendatensätze, der vorherige Programmierer hat dabei jeweils einen Timestamp für den letzten Zugriff weggeschrieben und darauf geprüft, damit dieser nicht gleichzeitig geöffnet wird und nach dem letzen Zugriff ne gewisse Zeit vergeht, bevor er noch Mal angefasst wird.
Nun wurden aber weitere Mitarbeiter auf die Telefonie angesetzt, nun kommt es immer häufiger vor, Mitarbeiter B auf den Datensatz zugreift, bevor Mitarbeiter A, welcher ebenfalls diesen Datensatz bearbeiten will seinen Timestamp weggeschrieben hat..
Wie kann ich dieses Verhalten am elegantesten und bequemsten unterbinden?
Wenn es keine Webapplikation wäre, würde ich einen Dienst laufen lassen, welcher den einzelnen Mitarbeitern die ID's zuweist....
Bietet die Datenbank geeignete Funktionalitäten, um dies zu verhindern?
Kann ich irgendwie ne Queue bauen, oder sollte ich mit locks arbeiten?
Danke und VG
ich bin gerade dabei hier eine Software in PHP für telefonische Kundenbefragungen zu erweitern, der verwendete DB-Server ist Mysql:
Konkret geht es um die Zugriffe auf die einzelnen Kundendatensätze, der vorherige Programmierer hat dabei jeweils einen Timestamp für den letzten Zugriff weggeschrieben und darauf geprüft, damit dieser nicht gleichzeitig geöffnet wird und nach dem letzen Zugriff ne gewisse Zeit vergeht, bevor er noch Mal angefasst wird.
Nun wurden aber weitere Mitarbeiter auf die Telefonie angesetzt, nun kommt es immer häufiger vor, Mitarbeiter B auf den Datensatz zugreift, bevor Mitarbeiter A, welcher ebenfalls diesen Datensatz bearbeiten will seinen Timestamp weggeschrieben hat..
Wie kann ich dieses Verhalten am elegantesten und bequemsten unterbinden?
Wenn es keine Webapplikation wäre, würde ich einen Dienst laufen lassen, welcher den einzelnen Mitarbeitern die ID's zuweist....
Bietet die Datenbank geeignete Funktionalitäten, um dies zu verhindern?
Kann ich irgendwie ne Queue bauen, oder sollte ich mit locks arbeiten?
Danke und VG