2010-11-26 23 views
0

Ich benutze SQL Server 2005 und habe 2 Tabellen in meiner Datenbank. Wie kann ich einen Trigger schreiben, der einen Datensatz in Tabelle 2 VOR dem Löschen in Tabelle 1 einfügen kann? Wie kann ich das tun? Ich brauche das für VB.Net. Ich habe bereits eine Verbindung mit SQL Server hergestellt.Trigger für vor dem Löschen eines Datensatzes

+1

Bitte poste den Triggercode, den du bisher geschrieben hast. Die Leute schreiben im Allgemeinen nicht einfach Ihren Code für Sie. –

+0

danke du ....... das nächste Mal erinnere ich mich an ......... –

Antwort

1

Logisch, einfügen, ob die INSERT vor oder nach der DELETE sind keine Rolle spielt, weil der Auslöser Teil der impliziten Transaktions erstellt ist durch das LÖSCHEN.

Wenn also die INSERT fehlschlägt, wird die DELETE zurückgesetzt (mit entsprechender Behandlung). INSERT zuerst, sie DELETE würde das gleiche.

Mit anderen Worten, Sie können INSTEAD OF (oder VOR) Trigger verwenden, um die INSERT zu tun, aber Sie müssen dann Ihre eigenen DELETE in den Trigger schreiben. Aufgrund dessen, was ich oben über Transaktionen gesagt habe, können Sie einen AFTER/FOR-Trigger verwenden. So etwas wie die Antwort von Pankaj Agarwal

1

Angenommen, es gibt zwei Tabellen tblA und tblB. , wenn ein Datensatz aus TBLA löscht dann Trigger können wir diese gelöschten Datensatz in TBLB

create trigger t1 on tblA 
for delete 
as 
insert into tblB select * from deleted 
Verwandte Themen