PDA

Vollständige Version anzeigen : accdb mit MSSQL-Tabellen: Log-Trigger feuert, Daten "veraltet" -> Fehler...


Atrus2711
29.05.2012, 14:35
Hi,

ich habe hier eine accdb, die Tabellen aus dem MSSQL 2005 per ODBC eingebunden hat. Auf die Tabellen greife ich mit Formularen zu.

Die Tabellen haben auf dem Server allesamt je einen Trigger für After Update und After Insert. Dieser Trigger tragen ein, durch wen und wann die letzte Änderung an einem Datensatz geschah.

Diese Trigger feuern natürlich auch, wenn ich die Daten über ein gebundenes Formular ändere. Allerdings kommt, sobald die erste Änderung geschehen ist, bei der erneuten Änderung des gleichen Datensatzes die Meldung: "Die Daten wurden geändert."

Klar: Der Trigger hat Datum und User auf dem Server nachgetragen. Damit ist der Satz im Vergleich zum ursprünglich im Formular gezeigten Satz verändert, und das sagt die Meldung ja auch aus.

Aber bei diesen beiden Feldern ist dieses Verhalten hinderlich.

Ich könnte natürlich das Form bzw. den aktuellen Datensatz nach jeder Änderung neu abfragen, dann tritt das Problem nicht auf, weil dann ja die aktuellen Daten bereitstehen. Aber gibt es einen anderen Weg?

Edit: ODBC-Aktualisierungsintervall runtersetzen hilft auch, ändert aber eigentlich nix am Problem...

Josef P.
29.05.2012, 16:13
Hallo!

Hast du ein Timestamp-Feld in der Tabelle?
Ich kann nämlich das von dir beschriebene Verhalten nur nachstellen, wenn ich eine Tabelle ohne Timestampfeld verwende.

mfg
Josef

Atrus2711
30.05.2012, 07:51
Bisher nicht... ich teste es mal aus. Ich hatte TS eigentlich nur bei MySQL im Hinterkopf...

Edit: ja, das war's. Besten Dank! :D