尝试插入插入时的另一个数据库时触发器抛出错误

时间:2017-09-20 11:11:23

标签: mysql sql database triggers digital-ocean

我正在尝试插入' latestdb'来自' fold' localhost下同一服务器上的数据库抛出此错误:

错误 SQL查询:

CREATE trigger after_insert_db1_t1 AFTER INSERT ON  `fold`.pr_users
FOR each
ROW BEGIN INSERT INTO  `latestdb`.pr_users(

username,
userpass,
email
)
VALUES (
NEW.username, NEW.userpass, NEW.email
);

MySQL说:文档

  

1064 - 您的SQL语法出错;检查与MariaDB服务器版本对应的手册,以获得正确的语法

     

near''在第1行

两个表都具有相同的名称,包含这些字段 -

idusernameuserpassemaildepartmentiduserroleidmanageriduserlevelbranchidis_globalregistrationtimetimemodifiedmodifieridstatusdeletedtemppass,{ {1}},temppassvalidtilllastloginlastrefreshlastloginipif_onlinepfield

但我想只复制3个字段 - username,userpass,email

1 个答案:

答案 0 :(得分:1)

删除BEGINEND;似乎删除了此处的语法错误问题。

CREATE TRIGGER after_insert_db1_t1 
    AFTER INSERT ON `fold`.pr_users 
FOR EACH ROW
    INSERT INTO `latestdb`.pr_users(
       username, userpass, email
    )
    VALUES (
       NEW.username, NEW.userpass, NEW.email
    );