Triggers get invoked automatically when the event specified in it gets fulfilled, it can't return any value.So user have no control over it's invocation.Whereas stored procedure can be called as per application requirement and can get output parameters. Source: CoolInterview.com
Triggers once defined are called automatically, there can be no explicit invocation Stored procedure has to be called explicitly, moreover procedures can return values, triggers can't Source: CoolInterview.com
1. trigger doesnot except argument but store procedure does. 2. trigger cannot be local and store as a stand alone object in database. but store procedure can be store in package. 3. Trigger execute implicitly whereas store procedure execute via procedure call from another block.
PROCEDURE-> means it will call the specified function,when we assumed it before.procedure is active. TRIGGER-> trigger are active for after fulfilling the specified conditions. Source: CoolInterview.com
Stored procedures are used to perform a task and should be invoked explicitly using exec. Triggers are used to restrict invalid transactions and invokes(fires) implicitly when an dml manipulation happens Source: CoolInterview.com
A Stored Procedure is set of pre-compiled sql statements which are stored in memory. These statements are executed by executing that procedure which display results based on arguments passed to that procedure.
A trigger is invoked automatically when any operation (insertion,deletion and updation) is performed on particular table.Triggers are used to record events performed on table. Source: CoolInterview.com