我在这里遇到了一个问题,在MYSQL中我有:
1-table称为“norte”,它有一个名为“nortel”的列 2表称为“bitacora”,它有一个名为“telefono”的列
即时触发复制此信息,例如,每当我向“norte”表添加内容时,我希望将其自动复制到bitacora表,我不知道我错在哪里这是我的触发器
CREATE TRIGGER insertar AFTER INSERT ON norte
FOR EACH ROW
BEGIN
INSERT INTO bitacora SET telefono = NEW.nortel
END;
这里的问题是它说意外的结束期待';'
但如果我删除了“END”,则说
CREATE TRIGGER insertar AFTER INSERT ON norte
FOR EACH ROW
BEGIN
INSERT INTO bitacora SET telefono = NEW.nortel;
意外的END_OF_INPUT期待';'
答案 0 :(得分:1)
您需要更改分隔符。
delimiter |
CREATE TRIGGER insertar AFTER INSERT ON norte
FOR EACH ROW
BEGIN
INSERT INTO bitacora (telefono) values (NEW.nortel);
END
|
delimiter ;
否则,DB认为您的触发器语句在第一个;
结束,然后它将不完整。
答案 1 :(得分:0)
您在NEW.nortel之后缺少“; ”:
应该是:
CREATE TRIGGER insertar AFTER INSERT ON norte
FOR EACH ROW
BEGIN
INSERT INTO bitacora SET telefono = NEW.nortel;
END;
答案 2 :(得分:0)
DELIMITER $$
CREATE TRIGGER row_update_trigger AFTER INSERT ON returns_loading_dc
FOR EACH ROW BEGIN
INSERT INTO Returns_receiving_Fc
set
Var_key=NEW.Var_key,
Product_Title=NEW.Product_Title,
Building=NEW.Building,
Hub_ID=NEW.hub_id,
JPIN=NEW.JPIN,
Tagging_Required=NEW.Tagging_Required,
Food_Non_Food=NEW.Food_Non_Food,
Qty_loaded_from_hub=NEW.Total_Quantity_Loaded;
END $$ need help