/ / Generuj skrypty SQL dla wyzwalaczy - sql, triggers, db2, generator

Wygeneruj skrypty SQL dla wyzwalaczy - sql, triggers, db2, generator

Często muszę utworzyć wyzwalacz, który skopiuje całą zawartość wierszy na insert / update do innej tabeli. Ponieważ niektóre tabele mają 200 kolumn, często jest to długotrwałe pisanie

CREATE TRIGGER scheme.trigger AFTER UPDATE ON scheme.table
REFERENCING OLD as o_row NEW as n_row
FOR EACH ROW
BEGIN
INSERT INTO archive (...) VALUES(...);
END;

To dużo pisania. Czy istnieje łatwy generator do budowania tego typu wyzwalaczy, wkładek, aktualizacji?

Odpowiedzi:

1 dla odpowiedzi № 1

Jeśli proces ma zestaw parametrów wejściowych iproces z tymi parametrami jest taki sam, można wywołać procedurę składowaną z wyzwalacza, przekazując parametry. W ten sposób nie musisz recypować / odtwarzać wszystkich tych zdań DML.


1 dla odpowiedzi nr 2

Nie wiem o narzędziu, które generuje instrukcje CREATE TRIGGER dla ciebie, ale wielokrotnie generowałem ten DDL z kwerendy, a jedynym widokiem, jaki kiedykolwiek miałem do odniesienia, był SYSCAT.COLUMNS

Poniższe czynniki uprościją wyzwalaczGenerator kwerend DDL, który będziesz pisać: - Nazwy kolumn między oryginalną tabelą a tabelą archiwum są identyczne. - Żadna z kolumn w tabeli docelowej nie jest zdefiniowana jako ZGODNA ZAWSZE, w przeciwnym razie będziesz musiał pominąć je z instrukcji INSERT.