Hallo zusammen.
Ich verwende für den Zugriff auf einen
SQL Server 2 ADOTable (Master/Detail) Komponenten.
Nun habe ich einen Trigger erstellt, der einen Datensatz, den ich von der Master Tabelle lösche, in eine andere Tabelle wegsichert.
Im Enterprise Manager des
SQL Servers funktioniert der Trigger einwandfrei, nur wenn ich ein Table.delete von Delphi ausführe bekomm ich eine
OLE-
Exception Fehlermeldung: "Die zum Aktualisieren angegebene Zeile wurde nicht gefunden. Einige Werte wurden seit
dem letzten Lesen ggf. geändert".
Dadurch dass ich ntext Felder verwende kann ich auch keine After-Delete Trigger verwenden sondern muss lt. Anleitung
einen Instead-of-Delete Trigger verwenden und den Löschbefehl im Trigger einbauen.
Der Datensatz wird letztendlich auch gelöscht und in die Sicherungstabelle geschrieben.
Der Trigger sieht folgendermaßen aus:
CREATE TRIGGER [LAGER_ARCHIVIEREN]
ON dbo.LAGER
INSTEAD OF DELETE
AS
BEGIN
DELETE FROM BILDER WHERE NR IN (SELECT I_NUMMER FROM deleted)
INSERT INTO LAGERARCHIV
SELECT *,SYSTEM_USER,GETDATE() FROM deleted
DELETE FROM LAGER
WHERE I_NUMMER IN (SELECT I_NUMMER FROM deleted)
END
Wer kann mir bei dem Problem weiterhelfen ?