概述
你的位置:
问答吧
-> MySQL
-> 问题详情
mysql创建触发器问题
我想在mysql上创建一个触发器,原代码如下
CREATE TRIGGER comment_afterdelete_on_mynew
before DELETE ON tb1_mynew
FOR EACH ROW
BEGIN
select * from tb1_mynew;
END
不知道为什么老是报第五行有语法错误,也就是我把select语句去掉就可以用了,但我单独测试过这个select语句是正确的
我该怎么解决。
我的mysql是linux上的,版本号是5.0.45
作者: wgczxm
发布时间: 2011-12-21
已经提示:
Not allowed to return a result set from a trigger
在TRIGGER中不能返回结果集,你要达到什么目的
作者: WWWWA
发布时间: 2011-12-21
我其实是想在触发器里做一个删除语句,但无论我在触发器里写什么sql语句都会报语法错误。我已经在外部验证过这些语句都是正确的。我改过里面的语句,改成delete也是不对的。
作者: wgczxm
发布时间: 2011-12-21
你的代码?不能对本表进行操作
delimiter $$
CREATE TRIGGER comment_afterdelete_on_mynew
before DELETE ON tb1_mynew
FOR EACH ROW
BEGIN
sql 语句;
END;$$
delimiter ;
作者: WWWWA
发布时间: 2011-12-21
我的代码不是对本表 而是对另外一张表啊。
作者: wgczxm
发布时间: 2011-12-21
用3楼格式修改你的TRIGGER
作者: WWWWA
发布时间: 2011-12-21
好的,我试试看;
作者: wgczxm
发布时间: 2011-12-21
实验过了,不行。语法错误,这次变成delimiter $$有语法错误了;
作者: wgczxm
发布时间: 2011-12-21
引用 7 楼 wgczxm 的回复:
实验过了,不行。语法错误,这次变成delimiter $$有语法错误了;
代码是什么,在命令行下输入?
作者: WWWWA
发布时间: 2011-12-21
TRIIGER 中不可以有返回记录集的语句。 你的这个 select * from tb1_mynew; 会返回结果集。 希望通过这个语句实现什么功能? 不会是在DELETE的时候还需要显示一下 select * from tb1_mynew; 吧。
作者: ACMAIN_CHM
发布时间: 2011-12-21
最后
以上就是无限帽子为你收集整理的linux mysql 创建触发器_mysql创建触发器问题的全部内容,希望文章能够帮你解决linux mysql 创建触发器_mysql创建触发器问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复