【发布时间】:2012-11-19 22:08:05
【问题描述】:
我已创建此触发器用于自动生成 SDA0001、SDA0002 等用户代码... 我刚刚包含了 BEGIN 和 END 之间的主要语句。它是在表 agent_mst
上创建 BEFORE INSERTDECLARE max_id INT;
SET max_id=(SELECT MAX(agent_id_pk)+1 FROM `agent_mst`);
IF (max_id IS NULL) THEN
SET max_id=1;
END IF;
SET
NEW.date_added=NOW(),
NEW.date_updated=NOW(),
NEW.agent_code = CONCAT('SDA', LPAD(max_id, 4,'0'));
它给出的错误如下
MySQL 说:#1064 - 你的 SQL 语法有错误;检查 与您的 MySQL 服务器版本相对应的手册 'DECLARE max_id INT; 附近使用的语法; SET max_id=(选择 MAX(agent_id_pk)+1 FROM
agent_mst); ' 在第 1 行
我正在使用 phpMyAdmin 创建这个触发器。
有什么建议吗? 提前致谢。
【问题讨论】: