A trigger is a special type of stored procedure that fires off automatically whenever a special event in the database occurs.
For example, a trigger can be invoked when a row is inserted into a specified table or when certain table columns are being updated.
Note: The material on triggers that was formerly in this document has been moved to A New Document on Constraints and Triggers. PL/SQL extends SQL by adding constructs found in procedural languages, resulting in a structural language that is more powerful than SQL. All PL/SQL programs are made up of blocks, which can be nested within each other.
Typically, each block performs a logical action in he program.
This common state is established at the start of triggering statement and is destroyed after completion of trigger (regardless of trigger being in error or not).
At this time SQLite supports only FOR EACH ROW triggers, not FOR EACH STATEMENT triggers.
Hence explicitly specifying FOR EACH ROW is optional.
keywords specify whether the trigger fires off before or after the DML event actually takes place.
In other words, if a particular trigger is designed to execute whenever a row is inserted into table A and the Oracle's PL/SQL has all the options required by the SQL99 standards and many more.