php小試mysql-zmq-plugin和pthreads

zchd發表於2014-08-20

原文: http://my.oschina.net/neochen/blog/294354

https://github.com/netkiller/mysql-zmq-plugin

有2張表:

表1:device, 裡面有最主要的2個欄位(id, device_type, …..),表明了”裝置型別”與”ID”;

表2:alarm_information,記錄了每種裝置的告警資訊,其中有2個主要欄位(id, device_type, ….);

 

要求:當 device中的某項被刪除的時候,alarm_information中該裝置所有的告警資訊全部被刪除。

 

在device中建立觸發器:

///////////////////////////////////////////////////////////////////////////////////////////////

create   trigger   update_alarm_information   before delete   on   device   
  for   each   row  

begin    
  set   @id=OLD.id; //儲存被刪除裝置的“id”

  set   @dtype=OLD.device_type;  //儲存被刪除記錄的“device_type”
  delete   from   alarm_information   where   id=@id and device_type = @dtype;   
end;

///////////////////////////////////////////////////////////////////////////////////////////////

 

如果用Navicat for Mysql建立觸發器就更加方便了

    1. 首先選擇表device,點選右鍵,在彈出選單中選擇“設計表”
    2. 選擇“觸發器”
    3. 3.  在定義框中寫入:
    4. begin    
        set   @id=OLD.id; //儲存被刪除裝置的“id”

        set   @dtype=OLD.device_type;  //儲存被刪除記錄的“device_type”
        delete   from   alarm_information   where   id=@id and device_type = @dtype;   
      end;

      4.  完成

    示例一  
    delimiter //    
    create trigger InsertUser    
    before insert on user   
    for each row    
    Begin   
    insert into user_group(uid,gid) values(new.uid,`group4444444444`);    
    end;//    
    delimiter ;    
     
    示例二    
    delimiter //    
    create trigger InsertUser    
    before insert on user   
    for each row    
    Begin   
    IF new.Type=2 then   
    insert into user_group(uid,gid) values(new.uid,`group4444444444`);    
    else   
    insert into user_group(uid,gid) values(new.uid,`group55555555555`)    
    END IF;    
    end;//    
    delimiter ;    
     
    示例三:    
    delimiter //    
    create trigger InsertUser    
    before insert on user   
    for each row    
    Begin   
    IF new.type=1 then   
    insert into user_group(uid,gid) values(new.uid,`578d3369633b47bd9c1fe8bf905cbfb1`);    
    END IF;    
    IF new.type=2 then   
     insert into user_group(uid,gid) values(new.uid,`387bcd57fc5a4c3c9de83ee210fef661`);    
    END IF;    
    end;//    
    delimiter ;   

 


相關文章