PDA

View Full Version : SQL Trigger



mk
24-04-18, 13:49
Hi *ALL,

an einer DDS Tabelle hängt ein SQL Trigger mit AFTER Insert.

Die Bibliothek mit der Tabelle wurde in eine separate Bibliothek mit dem
Befehl RSTLIB zurückgespeichert.

Jetzt meint der Kollege das damit ( vorher läuft in dem CL ein CLRLIB )
der Trigger beim Restore ausgelöst wurde.

Ich habe behauptet das dies nicht so ist. Hat jemand eine Meinung dazu ?
Gruß an *ALL
Michael

Fuerchau
24-04-18, 15:34
Was soll der Trigger beim Restore?
Die Daten werden ja weder geändert, gelöscht noch hinzugefügt.
Es wird auch kein Trigger benötigt.

Anders sieht es u.U. beim CRTDUPOBJ aus.
Es wird das Objekt dupliziert, mit allen Constraints und Triggern, anschließend werden die Daten hineinkopiert, was dann natürlich den Trigger auslöst.

Hier kann es u.U. zu Problemen führen, wenn der Trigger z.B. andere Dateien updated, da er ja nicht weiß, dass eine Kopie erstellt wird.

SQL hat das so gelöst, dass ein "create table as (select ....) with data" eben die Trigger nicht dupliziert.