来自phpMyAdmin的MySQL触发器查询
我正在从我的phpMyAdminSQL选项卡运行以下查询来自phpMyAdmin的MySQL触发器查询,php,mysql,sql,phpmyadmin,Php,Mysql,Sql,Phpmyadmin,我正在从我的phpMyAdminSQL选项卡运行以下查询 CREATE TRIGGER testTrigger AFTER INSERT ON tbl_table1 FOR EACH ROW BEGIN INSERT INTO tbl_table2 (id,name) values (NEW.id,NEW.name); END 但每次我收到这个错误消息: #1064-您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以获取第5行“”附近要使用的正确语法 Im使用MySQL客
CREATE TRIGGER testTrigger
AFTER INSERT ON tbl_table1
FOR EACH ROW
BEGIN
INSERT INTO tbl_table2 (id,name) values (NEW.id,NEW.name);
END
但每次我收到这个错误消息:
#1064-您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以获取第5行“”附近要使用的正确语法
Im使用MySQL客户端版本:5.1.37,PHPMyadmim版本信息:3.2.2.1deb1
如果要在触发器中使用SET NEW.col\u name=value
,请
请注意,不能在操作后使用此选项,必须使用
它在动作之前
因此,您可能应该尝试:
CREATE TRIGGER testTrigger
BEFORE INSERT ON tbl_table1
FOR EACH ROW
BEGIN
INSERT INTO tbl_table2 (id,name) values (NEW.id,NEW.name);
END
编辑:我尝试了这个,它在MySQL中工作
DROP TRIGGER IF EXISTS testTrigger;
CREATE TRIGGER testTrigger
BEFORE INSERT ON tbl_table1
FOR EACH ROW
BEGIN
INSERT INTO tbl_table2 VALUES (NEW.id,NEW.name);
END;
然后尝试插入test1,选择5,'pois'代码>和触发器工作 看:
如果要在触发器中使用SET NEW.col\u name=value
,请
请注意,不能在操作后使用此选项,必须使用
它在动作之前
因此,您可能应该尝试:
CREATE TRIGGER testTrigger
BEFORE INSERT ON tbl_table1
FOR EACH ROW
BEGIN
INSERT INTO tbl_table2 (id,name) values (NEW.id,NEW.name);
END
编辑:我尝试了这个,它在MySQL中工作
DROP TRIGGER IF EXISTS testTrigger;
CREATE TRIGGER testTrigger
BEFORE INSERT ON tbl_table1
FOR EACH ROW
BEGIN
INSERT INTO tbl_table2 VALUES (NEW.id,NEW.name);
END;
然后尝试插入test1,选择5,'pois'代码>和触发器工作