This document discusses database triggers. It defines a trigger as a block of code that fires automatically when certain data manipulation language (DML) actions like insert, update or delete occur on a database table. Triggers can be used for auditing, maintaining data integrity, referential integrity, and other purposes. There are two types of triggers - statement triggers, which fire once per triggering statement, and row triggers, which fire once for each affected row. Triggers have access to the old and new values of the rows using the :OLD and :NEW prefixes.