A trigger is a special kind of stored procedures that automatically executes when an event occurs in database.You cannot invoke triggers explicitly.
Types of triggers :
1.Instead of Trigger
2.After Trigger(for Triggers)–Does not supports view.
Instead of Triggers :
As the name suggest,you take control over Insert/Update/Delete and you decide if you really want to Delete a table record that has to be deleted even though you give a delete statement over table.
create trigger trigeer_name on your_table instead of delete As declare @id int; Begin select id=d.Id from deleted d; /**your operation**/ End
After Trigger :
Events that has to occur after Insert/Update/Delete are termed as After Triggers.
Create trigger your_triggername on your_table; for Insert; as begin select id=d.Id from inserted (inserted is a special table provided by sql) /**your operation **/ end
How to get column values after/before statement(Insert/Update/Delete) gets executed in triggers ?
Sql provides special tables for triggers namely inserted,deleted which will hold the records/column values,we can make use of this table in after/instead of triggers.