| Author: sangeetha 12 May 2009 | Member Level: Gold Points : 2 |
A stored procedure is a program (or procedure) which is physically stored within a database. They are usually written in a proprietary database language like PL/SQL for Oracle database or PL/PgSQL for PostgreSQL. The advantage of a stored procedure is that when it is run, in response to a user request, it is run directly by the database engine, which usually runs on a separate database server. As such, it has direct access to the data it needs to manipulate and only needs to send its results back to the user, doing away with the overhead of communicating large amounts of data back and forth.
User-defined function =====================
A user-defined function is a routine that encapsulates useful logic for use in other queries. While views are limited to a single SELECT statement, user-defined functions can have multiple SELECT statements and provide more powerful logic than is possible with views.
1>Procedure can return zero or n values whereas function can return one value which is mandatory.
2>Procedures can have input,output parameters for it whereas functions can have only input parameters.
3>Procedure allow select as well as DML statement in it whereas function allow only select statement in it.
4>Functions can be called from procedure whereas procedures cannot be called from function.
5>Exception can be handled by try-catch block in a procedure whereas try-catch block cannot be used in a function.
6>We can go for transaction management in procedure whereas we can't go in function.
7>Procedures can not be utilized in a select statement whereas function can be embedded in a select statement.
|
| Author: Ravi kiran 08 Sep 2009 | Member Level: Bronze Points : 1 |
1. Functions are compiled and executed at run time. Stored procedures are stored in parsed and compiled format in the database.
Kindly clarify this point with msdn, it says both are compiled and execution plans are cached. http://msdn.microsoft.com/en-us/library/ms191007.aspx
|
| Author: Sudarsan C.R 16 Sep 2009 | Member Level: Bronze Points : 1 |
Functions a) Can return only one value b) Called from SQL Query c) Compiled and executed during run time Stored procedures a) Can return more than one value b) Can be called from SQL Query c) Parsed and Compiled during design time itself
|