MYSQL CONSOLE 中的触发器
Posted
技术标签:
【中文标题】MYSQL CONSOLE 中的触发器【英文标题】:trigger in MYSQL CONSOLE 【发布时间】:2013-03-07 17:53:55 【问题描述】:我正在处理phpmyadmin
。
要编写触发器,我使用的是mysql console
。
它在启动时效果很好。但是一旦我写了一个触发器并且它被成功执行,那么每次在任何查询之后我都必须给delimiter
(|)来执行查询。
我无法理解为什么我必须在简单的选择查询之后放置分隔符?分隔符用于触发仪式。
我在写触发器时遗漏了什么吗?
例如:
在触发后,我正在编写选择语句而不是我必须将其编写为:
select * from tableName;|
如果我不使用|
,它不会被执行。
【问题讨论】:
【参考方案1】:试试这个:
DELIMITER $$
DROP TRIGGER IF EXISTS `myTriggerName`$$
CREATE TRIGGER `myTriggerName` AFTER DELETE ON `myTableName` FOR EACH ROW BEGIN
...........
............
.............
END$$
DELIMITER ;
【讨论】:
【参考方案2】:触发器创建后,需要将分隔符改回';'
参见手册中的示例:
http://dev.mysql.com/doc/refman/5.6/en/stored-programs-defining.html
delimiter //
... your trigger here ...
delimiter ; <-- change the delimiter back
【讨论】:
以上是关于MYSQL CONSOLE 中的触发器的主要内容,如果未能解决你的问题,请参考以下文章