MySQL DELIMITER语法错误

Sop*_*hia 15 mysql sql triggers delimiter

此MySQL脚本安装多个触发器.

它适用于运行MySQL 5.0.51b-community的一台机器.在运行MySQL 14.12 Distrib 5.0.45的另一台机器上,对于redhat-linux-gnu(i386),它失败了,这个错误消息似乎与DELIMITER // ... // DELIMITER; 句法 :

第272行的错误1064(42000):SQL语法中有错误; 检查与MySQL服务器版本对应的手册,以便在'DELIMITER附近使用正确的语法; DROP TRIGGER IF EXISTS trigger_name; DELIMITER'在第1行

脚本语法(摘要)是:

DROP TRIGGER IF EXISTS trigger_name;
DELIMITER //
CREATE TRIGGER trigger_name BEFORE UPDATE ON table
FOR EACH ROW BEGIN
  -- Trigger logic goes here
END //
DELIMITER;

-- More trigger drop/create statements follow
Run Code Online (Sandbox Code Playgroud)

脚本有什么问题,我该如何纠正?

cha*_*aos 24

尝试

DELIMITER ;
Run Code Online (Sandbox Code Playgroud)

DELIMITER;
Run Code Online (Sandbox Code Playgroud)

你实际上是指定命令;的参数DELIMITER,所以没有空间可能会让它混淆.