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

标签 mysql sql database triggers digital-ocean

我试图从本地主机下同一服务器上的“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用户名用户密码电子邮件部门IDuserroleidmanagerid用户级别branchidis_global注册时间 >、时间修改modifierid状态已删除临时密码 temppassvalidtilllaSTLoginlastrefreshlaSTLoginipif_onlinepfield , 公司

但我只想复制 3 个字段 - 用户名、用户密码、电子邮件

最佳答案

删除 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
    );

关于mysql - 尝试在插入时插入另一个数据库时触发器抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46320509/

相关文章:

javascript - 脚本成功执行后运行php代码

java - 记录java应用程序的cpu使用情况

php - 将 Laravel 默认用户数据库连接更改为另一个数据库连接

php - MySQL ORDER BY rand(),名称为 ASC

php - Sr.No 在 PHP MYSQL 中无法正常运行

mysql - 混合变量赋值和数据检索——MySQL 与 MS SQL Server

php - 如何显示多对多 PHP/SQL 关系中的特定行/列?

mysql - LIMIT 按 GROUPED 字段而不是返回的所有行

sql - 按时间间隔对事件进行分组和计数,以及运行总计

mysql - 如何在多个匹配项之间拆分 FULLTEXT 索引