1708
MariaDBERRORNotableTriggersMEDIUM confidence

Error in the body of an unknown trigger

Production Risk

High — DML on the affected table is blocked.

What this means

MySQL encountered an error while parsing or executing a trigger whose name cannot be determined, typically due to corruption in the trigger definition stored in the data dictionary.

Why it happens
  1. 1Corrupt trigger definition in the mysql.triggers table or .TRG file.
  2. 2Trigger referencing a dropped stored routine or table.
How to reproduce
trigger — this will error
trigger — this will error
-- Occurs automatically when the table with the corrupted trigger is accessed.

expected output

ERROR 1708 (HY000): Error in the body of an unknown trigger.

Fix

Identify and drop the corrupted trigger

Identify and drop the corrupted trigger
SELECT TRIGGER_NAME FROM information_schema.TRIGGERS WHERE EVENT_OBJECT_TABLE = 'your_table';
DROP TRIGGER IF EXISTS corrupted_trigger_name;

Why this works

Removing the corrupt trigger entry allows normal table access to resume.

What not to do

Sources
Official documentation ↗

MySQL 8.0 — 1708 ER_ERROR_IN_UNKNOWN_TRIGGER_BODY

Content generated with AI assistance and reviewed for accuracy. Found an error? hello@errcodes.dev

← All MariaDB errors