MySQL triggers allow you to execute stored program code whenever a DML statement is issued against a database table. In MySQL 5.0, triggers can be used to automate denormalization or logging.
Implementation of data validation in MySQL triggers is more of a
challenge, as in MySQL there is no easy or straightforward way to
raise an error condition or abort the transaction when validation
fails. This will be remedied when the
SIGNAL statement is implemented in MySQL
5.2. In this chapter we presented a workaround that does allow data
validation triggers to be created in the interim, although the error
text generated is far from ideal.