我想更新另一个数据库中的另一个表,这是库存数量,当数量字段更新时,然后更新另一个表。
我有这个:
DELIMITER //
DROP TRIGGER IF EXISTS syncFromStockSys //
CREATE TRIGGER syncFromStockSys BEFORE UPDATE on db1.quantity
FOR EACH ROW BEGIN
UPDATE TABLE db2.oc_product
SET `quantity` = NEW.quantity
WHERE SKU = SKU; //<<-----------
END //
DELIMITER ;
但是有一个sintax错误 我正在使用phpMyAdmin来完成这个。
这是错误:
1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以获得正确的语法
靠近'TABLE db2.oc_product SET
quantity
= NEW.quantity SKU = NEW。在第5行
答案 0 :(得分:0)
不要使用PHP myadmin进行任何认真的工作。给自己一个合适的mysql客户端。至于错误。您不应在触发器块
中包含分隔符//
DELIMITER //
DROP TRIGGER IF EXISTS syncFromStockSys //
CREATE TRIGGER syncFromStockSys BEFORE UPDATE on db1.quantity
FOR EACH ROW BEGIN
UPDATE db2.oc_product
SET `quantity` = NEW.quantity
WHERE SKU = SKU;
END //
DELIMITER ;
你可能意味着
WHERE SKU = NEW.SKU;