我有两个表,t1和t2,其中t1和t2表里都有字段status,
我想在mysql里设置一个触发器:
   当t1里面的status字段更改时更改t2表里的status字段,
请问这个触发器语句怎么写?
麻烦大家写仔细点,我到网上找了很多,但是没看明白,谢谢!

解决方案 »

  1.   

    create trigger test after update
    on t1
    for each row
    begin
      

  2.   

    create trigger test after update
    on t1
    for each row
    begin
      update t2 set status=new.status where id=new.id;
    end
      

  3.   

    create trigger test after update on t1
    for each row
     update t2 set status=new.status where id=new.id;
    用2楼的方法就行了。建议阅读一下MYSQL手册中的例子。
      

  4.   

    两表是否有相同的KEY字段,如有,假设为IDcreate trigger test after update
    on t1
    for each row
    begin
      update t2 set status=new.status where id=new.id;
    end
      

  5.   

    21.1. CREATE TRIGGER语法
    CREATE TRIGGER trigger_name trigger_time trigger_event
        ON tbl_name FOR EACH ROW trigger_stmt
    触发程序是与表有关的命名数据库对象,当表上出现特定事件时,将激活该对象。触发程序与命名为tbl_name的表相关。tbl_name必须引用永久性表。不能将触发程序与TEMPORARY表或视图关联起来。trigger_time是触发程序的动作时间。它可以是BEFORE或AFTER,以指明触发程序是在激活它的语句之前或之后触发。
    参考手册里面有详细的例子,多读几篇手册,把原理弄清楚先。