Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

When a trigger is set on a table does the application code wait for the original statement and the trigger to execute before resuming or just the original statement? Consider application code to be PHP or Ruby.Here by original statement I mean the sql query called by the application code.

share|improve this question
up vote 0 down vote accepted

Triggers in MySQL are synchronous. That means that the query submitter has to wait for the trigger to finish before it can resume its work.

share|improve this answer

When a trigger is set on a table, the code calling the trigger executes, and then the trigger executes. After the execution of the trigger, control is then returned back to the calling code to continue its execution from where it was interrupted.

The trigger has to execute first because other subsequent lines of the code may be relating to the table and may be trying to alter the table in a way that may be unacceptable to the set trigger.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.