24 Aralık 2017 Pazar

Sqlite Trigger Kullanımı

Trigger: Tetikleyiciler herhangi bir database olayın olması durumunda tetiklenmesi saglanabilir update,insert,delete vs gibi olaylar meydana geldiginde tetiklenip bir iş yaptırılabilir.örnegin : databaseden bir bilgi silinidiginde log alıp saat kacta kim tarafından yapıldıgının bilgisini almak gibi .


//Log almak icin bir tablo olusturyoruz 


create table audit( emp_id not null, entry_date text not null );



// Bir tetikleyici olusturuyoruz Company tablosuna insert olayı olursa audit tablosuna id ve o anın tarihini yazıyoruz

create trigger audit_log after insert on Company 
begin 
 insert into audit(emp_id,entry_date)values (new.ID,datetime('now'));
 end;



artık Company tablosuna yapılan her insert işleminde audit tablosuna kayıt alacaktır 

örnegin : 
insert into Company (ID,NAME,AGE) values(100,"ayse",29);




BİLGİ : 
TABLOMUZ BULUNAN TRIGGERLARI LİSTELEME 

select name from sqlite_master where type = "trigger"


Trigger silme :


DROP TRIGGER trigger_name;

Share: