Như zerkms đã nói, bạn cần phải thay đổi thiết bị đo tốc độ. Nhưng vì bạn chỉ sử dụng 1 dòng mã nên bạn không cần BEGIN và END. Và theo cách đó, bạn cũng không cần phải thay đổi dấu phân cách
CREATE TRIGGER `default_order_value`
AFTER INSERT ON `clusters`
FOR EACH ROW
UPDATE `clusters` SET `order` = NEW.id WHERE `id` = NEW.id;
Vì bạn đang gặp lỗi, bạn không thể cập nhật hàng, tôi đề xuất như sau:
KHÔNG thực hiện truy vấn cập nhật nào cả. Theo mặc định, giá trị đơn hàng =giá trị ID. Vì vậy, khi giá trị đơn hàng thay đổi, bạn có thể cập nhật lại cho hợp lý.
Nếu bạn đang yêu cầu dữ liệu bằng php, hãy làm như sau:
$order = $row['order'];
if ($order == '')
$order = $row['id'];
Sau khi bạn cần cập nhật nó, bạn đã có giá trị chính xác.