Tôi không chắc chắn có gì sai với mã của mình.Lỗi khi sử dụng khác nếu kích hoạt sql
delimiter $$
CREATE TRIGGER updateRestaurantAtributes
AFTER UPDATE ON fields_data
FOR EACH ROW BEGIN
IF (NEW.fieldid = 1) THEN
UPDATE restaurants
SET address1 = NEW.data_txt
Where rid = NEW.itemid;
ELSE IF (NEW.fieldid = 2) THEN
UPDATE restaurants
SET address2 = NEW.data_txt
Where rid = NEW.itemid;
END IF;
END$$
Phiên bản trên không hoạt động. Nó nói lỗi cú pháp gần "END" (Dòng cuối cùng). Nhưng một cái gì đó hoạt động khi tôi sử dụng
delimiter $$
CREATE TRIGGER updateRestaurantAtributes
AFTER UPDATE ON fields_data
FOR EACH ROW BEGIN
IF (NEW.fieldid = 1) THEN
UPDATE restaurants
SET address1 = NEW.data_txt
Where rid = NEW.itemid;
END IF;
IF (NEW.fieldid = 2) THEN
UPDATE restaurants
SET address2 = NEW.data_txt
Where rid = NEW.itemid;
END IF;
END$$
Tôi không chắc chắn lý do tại sao. Tui bỏ lỡ điều gì vậy?
Thêm liên kết cho cú pháp :-) http://dev.mysql.com/doc/refman/5.5/en/if-statement.html –
@AdrianCornish cám ơn nó đã ở đó, liên quan đến dòng chữ " Cú pháp của MySQL " –
Lời xin lỗi của tôi - Tôi đã không nhấp vào liên kết –