Yes. AFAIK, MySQL 5.1 did not make any changes to the semantics of triggers. MySQL is trying to support the ANSI / ISO SQL specification for trigger semantics.
You can imagine that a sequence of operations that runs as a string is written to the database:
- Launch BEFORE Triggers
- Rate constraints, apply
NOT NULL
, apply DEFAULT
values - Enter a string in the database
- Update Indexes
- Trigger AFTER Triggers
AFTER, . NEW.somecolumn = 1234
, AFTER. , , .
, INSERT/UPDATE , , , . -, MySQL , , BEFORE -, . .
, , , , , . . BEFORE, - NOT NULL.
DELETE, , BEFORE.