Som zerkms sagde, skal du ændre delimeteret. Men da du kun bruger 1 kodelinje, behøver du ikke BEGIN og END. Og på den måde behøver du heller ikke ændre afgrænsningen
CREATE TRIGGER `default_order_value`
AFTER INSERT ON `clusters`
FOR EACH ROW
UPDATE `clusters` SET `order` = NEW.id WHERE `id` = NEW.id;
Da du får en fejl, kan du ikke opdatere rækken, jeg foreslår følgende:
Udfør IKKE opdateringsforespørgslen overhovedet. Som standard er ordreværdien =ID-værdien. Så når ordreværdien ændres, kan du opdatere den korrekt.
Hvis du anmoder om data med php, skal du gøre noget som dette:
$order = $row['order'];
if ($order == '')
$order = $row['id'];
Når du har brug for den opdatering, har du den korrekte værdi.