mysql - 在 MySQL 上触发

标签 mysql triggers phpmyadmin syntax-error

我正在尝试使用 phpMyAdmin 在 MySQL 中创建一个触发器,但我遇到了错误,而且我无法检测到错误。主要思想是在插入新用户时在表 stuffconfig 中创建一行。

代码:

CREATE TRIGGER create_stuff_and_config 
AFTER INSERT ON user
  FOR EACH ROW
BEGIN
    insert into stuff(user_id) values (NEW.user_id);     
    insert into config(user_id) values(NEW.user_id);
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 5

我已经检查了 MySQL 文档,但我发现我做得很好......

我也试过:INSERT INTO stuff SET user_id = NEW.user_id;

谢谢!

最佳答案

好吧,解决办法就是加分隔符...

DELIMITER //
CREATE TRIGGER create_stuff_and_config 
AFTER INSERT ON user
  FOR EACH ROW
BEGIN
    insert into stuff(user_id) values (NEW.user_id);     
    insert into config(user_id) values(NEW.user_id);
END; //
DELIMITER ;

关于mysql - 在 MySQL 上触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28371992/

相关文章:

mysql - 如何最大限度地减少MySQL数据库的查询执行时间?

mysql - 不带 where 子句的查询中 where 子句中的未知列

sql-server-2008 - 使用 SQL Server 2008 中的触发器和存储过程发送 SMS

c# - 延迟取消选择 ListBoxItem

android - 如何捕获设备上的应用程序卸载并让服务器知道这一点(iOS/Android)

php - 使用 PHP 和 MySQL 仅显示当前用户的详细信息

mysql - 使用jsp根据组合框中的选定值从2个不同的表中检索数据

sql - MySQL 条件删除外键脚本

mysql - 在 PhpMyAdmin 中添加 CONSTRAINT FOREIGN KEY 时出现问题

mysql - 如果我的 sql 转储包含 information_schema 数据库,我仍然可以导入 mysql 表吗?