我的操作系统是ubuntu12.10,mysql的版本是:5.1.41-3
我的错误信息是:check the manual that corresponds to your MySqlserver version for the right syntax to use near ''at line 3我的sql语句是:create trigger tr1 after delete on temp for each row
begin
    select * from temp;
end
当我执行时它就会报这个错误,但如果我执行以下代码就不会有问题(我将触发器的内容去掉)
create trigger tr1 after delete on temp for each row
begin
    
end
有人遇到过类似的问题嘛?请各位大哥帮帮忙啊

解决方案 »

  1.   

    create trigger tr1 after delete on temp for each row
    begin
        select * from temp;
    end
    -- 你的意思是当对表temp执行delete 操作的时候,每删除一行记录,要返回temp表剩下的所有记录,
    -- 返回到哪里去呢?如果我执行一个SQL语句,删除一万行,在这个delete的过程是是不是要执行一万次
    -- select * from temp 呢? 猪:不解释!
      

  2.   

    create trigger tr1 after delete on temp for each row
    begin
        select * from temp;
    end
    触发器中不可以有这种 select 的输出语句。
      

  3.   


    触发器不提供这样的SELECT功能。
    在别人电脑上创建没问题,对这句话持怀疑态度。
      

  4.   

    要先使用
    delimiter 定义分隔符;
    然后就可以运行了;
    不然的话当程序遇到
    select * from temp;
    中的‘;’时会直接运行,所以后面的就无法输入了.
      

  5.   

    触发器怎能用select语句呢?把mysql触发器的语法掌握好了。