mysql trigger on update Prüfung des OLD.Timestamp zu "aktuell".Timestamp

reanimator

Neuer Benutzer
Beiträge
2
Hallo zusammen,
gleich vorweg, selbst Frischling wäre übertrieben bitte um nachsicht.
Ich habe ein Problem mit einem Trigger und stehe total auf dem Schlauch!

Was soll geschehen!
eine Lösung soll prüfen ob "vor" dem Update der Timestamp des Datensatzes nochmals geändert hat.
Hat sich dieser geändert, soll das update nicht durchgeführt werden, gleich ob abbruch oder fehlermeldung
wichtig ist, es wird nicht durchgeführt!

Da ich derzeit an die u.g Mysql-Version gebunden bin, ist der Trigger nur Suboptimal denn hier benötige ich eventuell das Super Recht und das möchte ich eigentlich vermeiden.

Mysql 5.1.36
Editiert wird das Ganze via phpmyadmin daher habe ich den Trigger favorisiert.

Mein Trigger läuft bevor update ....
Code:
Begin
IF (select zeitstempel from  "meine Tabelle") Where id = OLD.id) != OLD.zeitstempel THEN
Call `irgendeine Prozedur`; --> gibt eventuell eine fehlermeldung aber mir fällt hier nichts ein
end if;


Für Ideen oder Anregungen wäre ich dankbar
Danke im vorraus.
 
Zuletzt bearbeitet von einem Moderator:
Werbung:
Der Trigger ist unnötig... Und auch sinnfrei...
Immerhin selektierst du hier innerhalb von ein paar Mikrosekunden den Wert zweimal und vergleichst die beiden Ergebnisse...

Normale vorgehensweise:
1. Write Lock auf den Datensatz legen
2. Zeitstempel prüfen (ggbfs. Lock wieder entfernen)
3. Updaten
4. Lock entfernen

Zu beachten ist hier das man den Zeitstempel an seine Applikation beim laden der Daten übergibt... Dieser so lange gehalten wird bis Änderungen vorgenommen werden soll und man dann diesen Zeitstempel mit dem in der Datenbank vergleicht.

Strukturell dürfte das dann so aussehen:

1. Applikation lädt Daten (auch den Zeitstempel)
2. User geht nen Kaffee trinken
10 Minuten Pause....
3. User macht ein paar Änderungen
4. Update Prozess (Zeitstempel wird von der Applikation mit übergeben und mit dem aktuellen in der Datenbank verglichen)

Edit:
Um es nochmal hervorzuheben... Trigger braucht man da keinen :)
 
Zuletzt bearbeitet:
Werbung:
Die Applikation ist der "Adminer Editor" den finde ich fix und praktisch --> nur die Sache mit der "wohl verdienten Pause" ist das Problem.

Das ist mir vorhin auch gekommen das ich eigentlich einen neuen Zeitstempel abhole und nicht die Daten vom Browser Cache für den vergleich nutze.
Suche eine einfache Lösung die mir mit "Adminer Edtor" ermöglicht da ich das Ganze aus fertigen Bausteinen zu schmieden.

Problem User lässt Browser mit getätigter Suche stehen und Editier nach einer Pause das Suchergebniss --> ein kurzer Timeout mit Neuanmeldung stört den Nutzer

Danke, muss ich mir überlegenwie es zu lösen ist. ggf Autorefresch des Adminers
 
Zurück
Oben