MySQL / phpMyAdmin从DELIMITER冻结

运行此过程会导致MySQL(或phpMyAdmin)冻结.我必须使用XAMPP命令停止MySQL,该命令在停止前约20秒冻结并“无响应”.我相信这是由delimiter命令引起的,它本身就开始出现问题.我尝试使用不同的分隔符(“//”)无效.

DELIMITER $

CREATE TRIGGER coroner AFTER INSERT ON events
FOR EACH ROW BEGIN
UPDATE teams WHERE id = NEW.victim SET live = live-1;
UPDATE teams WHERE id = NEW.shooter SET score = score+points;
END

$

DELIMITER ;

解决方法:

事实证明,phpMyAdmin在SQL查询框下面有一个标记为“delimiter:”的字段.使用它而不是命令解决了问题.进一步的研究解释说,“DELIMITER”不是一个SQL命令,而是一个通常由所有SQL ui实现的命令.

上一篇:mysql – 如何在一个sql触发器中使用多个事件?


下一篇:linux – 在PostgreSQL函数中使用参数运行系统命令