8
我不知道我的代码有什么问题。使用其他如果在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$$
上述版本不起作用。它说“END”(最后一行)附近的语法错误。但是,当我使用的东西有效
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$$
我不知道为什么。我错过了什么吗?
添加链接,语法:-) http://dev.mysql.com/doc/refman/5.5/en/if-statement.html – 2011-12-31 02:51:12
@AdrianCornish由于它已经在那里挂的话“ MySQL的语法“ – 2011-12-31 02:52:31
我的歉意 - 我没有点击链接 – 2011-12-31 02:55:20