Trigeri
Triger predstavlja blok PL/SQL koda koji se automatski izvršava kada korisnik pokuša modifikaciju podataka u okviru određene tabele u bazi podataka. Uglavnom se koristi za čuvanja integriteta podataka u bazi podataka. U zavisnosti od toga koje operacije baze podataka izazivaju okidanje trigera mogu se podeliti na: INSERT, UPDATE, DELETE trigere. Mogu se okinuti neposredno pre (BEFORE) ili posle (AFTER) izvršavanja SQL naredbe.
Trigeri se najčešće koriste za:
- nadgledanje (potencijalnih) promena u bazi podataka
- forsiranje ograničenja
- automatsko postavljanje ID-ova i izvedenih vrednosti
- automatsko čuvanje starijih verzija podataka
- sprečavanje izmena
- automatsko ažuriranje dnevnika promena
- reviziju promena
- primenjivanje pravila poslovanja
- poboljšavanje pravila poslovanja
Glavne karakteristike i efekti trigera su:
- ne prihvataju parametre i argumente
- može otkazati određenu operaciju
- može izazovati multipliciranje grešaka za odgovarajaću tabelu, ako je loše napisan
- ne može vratiti na pređašnje stanje pre izvršenja SQL naredbe.
Reference
уреди- http://download.oracle.com/docs/cd/B10501_01/server.920/a96524/c18trigs.htm#BEGIN
- http://publib.boulder.ibm.com/infocenter/iseries/v5r3/index.jsp?topic=/sqlp/rbafysqltrig.htm[мртва веза]
- http://msdn.microsoft.com/en-us/library/ms189799.aspx
- http://www.postgresql.org/docs/8.1/interactive/triggers.html
- http://dev.mysql.com/doc/refman/5.0/en/trigger-syntax.html
- http://searchenterpriselinux.techtarget.com/expert/KnowledgebaseAnswer/0,289625,sid39_gci1231331,00.html Архивирано на сајту Wayback Machine (5. фебруар 2010)
- https://web.archive.org/web/20100117005023/http://forge.mysql.com/wiki/Triggers