MYsql触发器问题 搞了一下午没搞明白
我的mysql 是 5.18的
create trigger min_art_comm
before delete on comment
for each row
begin
update `article` set `comment`=`comment`-1 where `article`.id=old.article;
end;很奇怪old怎么不是关键字一下是错误信息You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'end' at line 1

解决方案 »

  1.   

    create trigger min_art_comm
    before delete on comment
    for each row
    update `article` set `comment`=`comment`-1 where `article`.id=old.article;
      

  2.   

    或者加上delimiter,至于delimiter的作用,可以看一下手册中的说明delimiter //
    create trigger min_art_comm
    before delete on comment
    for each row
    begin
    update `article` set `comment`=`comment`-1 where `article`.id=old.article;
    end;
    //
    delimiter ;
    MySQL官方文档 http://dev.mysql.com/doc/refman/5.1/zh/index.html
      

  3.   

    当您的问题得到解答后请及时结贴.
    http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5.html
    http://topic.csdn.net/u/20100428/09/BC9E0908-F250-42A6-8765-B50A82FE186A.html
    http://topic.csdn.net/u/20100626/09/f35a4763-4b59-49c3-8061-d48fdbc29561.html8、如何给分和结贴?
    http://community.csdn.net/Help/HelpCenter.htm#结帖