【问题标题】:Create MySQL Trigger getting #1064 - You have an error in your SQL syntax创建 MySQL 触发器得到 #1064 - 您的 SQL 语法有错误
【发布时间】:2014-06-03 19:17:48
【问题描述】:

我正在尝试创建一个以前从未做过的触发器,这就是我要输入的代码。

CREATE TRIGGER 'NewMember' AFTER INSERT ON 'phplist_user_user'
FOR EACH ROW 
BEGIN 
INSERT INTO phplist_listuser (userid,listid) VALUES (NEW.id, '2');
END;$$

当我尝试运行 SQL 时,我得到了这个:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''NewMember' AFTER INSERT ON 'phplist_user_user'
FOR EACH ROW
BEGIN
INSERT I' at line 1 

我从 phpmyAdmin 的网站获得了这段代码。我不知道是什么问题,有人可以帮忙吗?就像我说的,我以前从来没有这样做过。提前致谢。

我尝试添加刻度,这就是我所拥有的:

CREATE TRIGGER `NewMember` AFTER INSERT ON `phplist_user_user`
FOR EACH ROW 
BEGIN 
INSERT INTO `phplist_listuser` (`userid`,`listid`) VALUES (NEW.id, '2');
END;$$

我现在收到此错误:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 4

phpMyAdmin 的行为好像 INSERT INTO 部分有问题,旁边有一个感叹号,当我点击它时,我需要尝试解释错误。我实际上是在输入 MySQL 告诉我修复它的方式。我已经尝试了多种与刻度的组合,在刻度中有列而不是在刻度中,等等......

【问题讨论】:

    标签: mysql sql triggers syntax-error


    【解决方案1】:

    标识符使用记号,而不是单引号:

    CREATE TRIGGER `NewMember` AFTER INSERT ON `phplist_user_user`
    

    【讨论】:

    • 我试过了,请查看上面的编辑。谢谢,我在其他一些教程中看到过,我只是从未真正想过其中的区别!
    猜你喜欢
    • 1970-01-01
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    • 2012-10-10
    • 1970-01-01
    • 2017-02-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多