> For the complete documentation index, see [llms.txt](https://mariadb.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mariadb.com/docs/server/server-usage/triggers-events/triggers.md).

# Triggers

{% columns %}
{% column %}
{% content-ref url="/pages/62KdnZBBlm7dhpR6PNYW" %}
[Trigger Overview](/docs/server/server-usage/triggers-events/triggers/trigger-overview.md)
{% endcontent-ref %}
{% endcolumn %}

{% column %}
Complete MariaDB triggers overview: BEFORE/AFTER INSERT/UPDATE/DELETE timing, CREATE TRIGGER syntax, FOLLOWS|PRECEDES ordering, and DROP/SHOW TRIGGERS.
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
{% content-ref url="/pages/l9mdwvNL9wgHEMksYKsc" %}
[CREATE TRIGGER](/docs/server/server-usage/triggers-events/triggers/create-trigger.md)
{% endcontent-ref %}
{% endcolumn %}

{% column %}
Complete CREATE TRIGGER reference: OR REPLACE, DEFINER, IF NOT EXISTS, FOLLOWS/PRECEDES options for BEFORE/AFTER INSERT, UPDATE, or DELETE triggers rules.
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
{% content-ref url="/pages/Ljtaf9pUXgVtwmfShNLM" %}
[Trigger Limitations](/docs/server/server-usage/triggers-events/triggers/trigger-limitations.md)
{% endcontent-ref %}
{% endcolumn %}

{% column %}
Understand the constraints of triggers, such as the prohibition of statements that return result sets or explicitly start/commit transactions.
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
{% content-ref url="/pages/vUklRmR6XbmbJAae6vPI" %}
[Triggers and Implicit Locks](/docs/server/server-usage/triggers-events/triggers/triggers-and-implicit-locks.md)
{% endcontent-ref %}
{% endcolumn %}

{% column %}
Explains how triggers can cause implicit locks on referenced tables during the execution of a statement, potentially affecting concurrency.
{% endcolumn %}
{% endcolumns %}
