请教各位高手,我有两个表,tab1,tab2,目的是利用tab2来适时记录tab1的插入,删除,更新情况,利用mysql5.0触发器的知识如何写?
tab1的字段为url,title,txt;//各字段分别为网址,网页标题,网页文本
tab2的字段为url,oper,time;//各字段分别为网址,操作(例如:insert,delete),操作时间
我看了网上的资料,对触发器有了大概了解,还是不知,如何在tab1中插入一条记录时,tab2中也记录相应的url,同时oper字段的值为insert,time字段的值为当前时间。

解决方案 »

  1.   

    create table tab1(url varchar(20),title varchar(20),txt varchar(20));
    create table tab2(url varchar(20),oper varchar(7),time datetime);delimiter |
    create trigger tab1_insert
    before insert
    on tab1
    for each row
    begin
    insert into tab2 select NEW.url,'insert',NEW();
    end |create trigger tab1_update
    before update
    on tab1
    for each row
    begin
    insert into tab2 select OLD.url,'update',NEW();
    end |create trigger tab1_delete
    before delete
    on tab1
    for each row
    begin
    insert into tab2 select OLD.url,'delete',NEW();
    end |insert into tab1 values('1','1','1')|
    update tab1 set txt='asdf'|
    delete from tabl|
      

  2.   

    多谢了,取得当前时间的函数是NOW()不是NEW();