首页 > 解决方案 > 在 MySQL Workbench 中执行触发代码时出错

问题描述

我正在使用触发器,但在执行代码时出现错误:

CREATE TRIGGER my_trigger
AFTER INSERT
ON reservation
FOR EACH ROW
EXECUTE PROCEDURE update_available_space NEW.date_shift, NEW.start_hour_shift;

错误代码:1064。您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 5 行的“PROCEDURE update_available_space NEW.date_shift, NEW.start_hour_shift”附近使用正确的语法

有人知道哪个是错误吗?

标签: mysqlsqlstored-procedurestriggers

解决方案


EXECUTE PROCEDURES 不执行存储过程

在 mysql 你调用程序

CREATE TRIGGER my_trigger
AFTER INSERT
ON reservation
FOR EACH ROW
 CALL update_available_space( NEW.date_shift, NEW.start_hour_shift);

但请记住,您不能在一个过程中更改同一个表,这会触发 TRIGGER


推荐阅读