我试图从本地主机下同一服务器上的“fold”数据库插入“latestdb”,抛出此错误:
错误 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 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use
near '' at line 1
两个表具有相同的名称,并且具有这些字段 -
id
、用户名
、用户密码
、电子邮件
、部门ID
、userroleid
、managerid
、用户级别
、branchid
、is_global
、注册时间
>、时间修改
、modifierid
、状态
、已删除
、临时密码
、 temppassvalidtill
、laSTLogin
、lastrefresh
、laSTLoginip
、if_online
、pfield
, 公司
但我只想复制 3 个字段 - 用户名、用户密码、电子邮件
最佳答案
删除 BEGIN
和 END;
似乎可以消除此处的语法错误问题。
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
);
关于mysql - 尝试在插入时插入另一个数据库时触发器抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46320509/