Forum: Datenbanken
Delphi
by VizeTE,
5. Okt 2005
Ahh...dann hatte ich das doch noch nicht ganz verstanden. Aber ich denke mit dieser Einschränkung kann ich leben. Bei dieser Tabelle sollten eingentlich nur eine Person zur gleichen Zeit arbeiten. Die Daten sind auch nicht sooo kritisch falls da mal was "falsch" gespeichert wird.
Danke! :thumb:
Forum: Datenbanken
Delphi
by VizeTE,
5. Okt 2005
Das habe ich schon befürchtet.
Das ist bei großen Datenmengen aber recht nervig, daher hatte ich gehofft das es eine bessere Lösung gibt.
Ich werde mal ein wenig mit der Methode UpdateMode auf upWhereKeyOnly setzen herumspielen. Auf den ersten Blick schien das ganz gut zu funktionieren.
Forum: Datenbanken
Delphi
by VizeTE,
5. Okt 2005
dfried hat ein Refresh vorgeschlagen. Wenn ich aber myQuery.Refresh aufrufen bekomme ich die Fehlermeldung:
Operation wird nicht unterstützt - Tabelle ist nicht eindeutig indiziert. (EDBEngineError)
Forum: Datenbanken
Delphi
by VizeTE,
5. Okt 2005
Hallo dfried.
Die erste Lösung funktioniert schon mal. Danke.
Wenn ich den Update-Modus "upWhereKeyOnly" verwende muß ich dann noch irgendwas beachten? Soweit ich die Hilfe verstande habe bekomme ich keine Probleme solange ich den Key nicht ändere. Gibts da noch mehr Stolpersteine?
Die zweite Lösung scheint mir aber auch vernünftiger. Ich verwende ein TQuery. Wie kann ich da einen Primary...
Forum: Datenbanken
Delphi
by VizeTE,
5. Okt 2005
Das funktioniert prinzipiell, ja. Das Problem liegt aber darin wenn ich diesen DS, nachdem "Post" aufgerufen wurde, nochmal ändere. Dann bekomme ich folgende Fehlermeldung: (wie Eingangs beschrieben)
Datensatz kann nicht gesperrt werden, da der Datensatz von einen anderen Benutzter geändert wurde.
(EDBEngineError)
Die einzige Erklärung die ich mir denken kann ist, daß der Trigger als ein...
Forum: Datenbanken
Delphi
by VizeTE,
4. Okt 2005
Ich bezweifle, dass das Interbase kann. Aber selbst wenn benötige ich diese Funktion ja auch nach dem ändern des DS. Da hilft der default-Wert leider nicht weiter.
Forum: Datenbanken
Delphi
by VizeTE,
4. Okt 2005
Theoretisch sollte das gehen aber das ist leider auch noch nicht was ich suche da ich gern die Serverzeit in dem Datumsfeld hätte und nicht die Zeit auf dem Client.
Forum: Datenbanken
Delphi
by VizeTE,
1. Okt 2005
mmm...es ist leider nicht meine Entscheidung welche Datenbank eingesetzt wird also werde ich wohl noch eine Weile an IB4 festhalten (müssen). :?
Forum: Datenbanken
Delphi
by VizeTE,
30. Sep 2005
Nein, es wird natürlich beim Insert nicht der Update-Trigger verwendet sondern ein anderer. Aber der Inhalt des Triggers ist der gleiche. Ich wollte damit nur verdeutlichen, daß es am Trigger selbst nicht liegen sollte. Da wird nur folgender Code ausgeführt:
new.Modified = 'now';
Für diese Tabelle gibt es ausnahmsweise keinen Trigger der eine Id hochzählt. Aber das sollte ja auch keine Rolle...
Forum: Datenbanken
Delphi
by VizeTE,
30. Sep 2005
Hallo zusammen,
ich habe ein Problem mit einem Trigger.
Ich füge einen neuen Datensatz in eine Tabelle ein. Auf dem Ereignis "Before Update" liegt ein Trigger der den DS um Datum und Uhrzeit ergänzt.
Wenn ich im Anschluß diesen DS wieder löschen will bekomme ich folgende Fehlermeldung:
Datensatz kann nicht gesperrt werden, da der Datensatz von einem anderen Benutzer geändert wurde.
...