$$符号在mysql中意味着什么?

时间:2016-06-29 07:03:25

标签: mysql

在MySQL查询中,$$表示什么?

DELIMITER $$
CREATE TRIGGER before_population_update
BEFORE UPDATE ON City
FOR EACH ROW BEGIN
INSERT INTO City_Changes
SET ACTION = ‘update’,
CityID = OLD.ID,
Population = OLD.Population,
User = USER(),
ChangedOn = NOW();
END $$
DELIMITER ;

1 个答案:

答案 0 :(得分:2)

触发器和存储过程[可能]由多个语句组成,每个语句都由;终止。由于;用于终止单个语句,因此需要一种方法来指示过程/触发器已完成 - 这是delimiter命令发挥作用的地方。

在第一行,我们定义以下触发器将由$$序列分隔(结束)。然后我们继续声明一个触发器(以create trigger开头,以我们定义的$$结束)。然后,在最后一行,我们将delimiter重置为默认;以获得良好的衡量标准。