Stored Procedures are called by the programmer wherever it
wants to fire but triggers fired automatically when
insert,delete,update occured. And triggers can be
implemented to tables & views only where as s.p used in the
database independently
To use stored procedure you have to make a call to that
procedure but Triggers fired automatically when an event is
occurred on the table associated with that Trigger like add,
insert or delete.
1. SP may Return a value but Trigger Not,
2. In SP you can pass parameter But in trigger you can't
3. we explicitly call the Sp when Trigger are implicitly
fired
4. you can write a sp in Trigger but in a Trigger you cant
write SP.
5. Trigger written on an individual Table or View where SP
is written for an Database
In case of sql queries,it is possible to compile one query
at a time,but incase of stored procedure we can compile
bunch of queries at a time and also it is need at first
time only,suppose we need modification on queries,after
modifications no need to compile again in case of stored
procedures,but in case of sql queries we have to compile
every time.Stored procedure contain queries in compiled
format so execution also fast and tome saving.One more
thing is in case of stored procedures serurity also more.
sp and trigger are both predefined set of sql statements
we can pass the arguments for sp but we cant pass the
arguments for triggers.
trigger will fire implicitly, when ever relavent action
performed by the user on the tables where the triggers are
placed.
But in the stored procedures u must call explicitly.