What is difference between a PROCEDURE & FUNCTION ?
Answers were Sorted based on User's Feedback
Answer / anil kumar jampana
sorry, we can use in,inout,out parameters in functions also.
one more diff. we can use functions in normal sql queries
but we cann't use procedures in sql queries....
| Is This Answer Correct ? | 9 Yes | 0 No |
Answer / ace
A function is a special kind of procedure. A function
returns a value in its name. A function can return more
than one value if it returns a ref cursor.
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / naresh bs
The main difference is that, a procedure may return and
value but a function has to return a value.
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / pankaj mehra
Well the main difference between procedures and function is
that the procedure may/may not return any value.it can
return more than one value also.
but functions can return only one value at a time and it
must have return keyword inside the function
| Is This Answer Correct ? | 3 Yes | 4 No |
Answer / surajit pathak
We can use in,inout,out parameters in functions also.
The most important difference is we can use functions in
normal sql queries if it is not containing any out
parameters.
but we cann't use procedures in sql queries....
| Is This Answer Correct ? | 1 Yes | 2 No |
Answer / chandrasekar.ramasamy
Function accepts only in parameter but procedure accepts
in,out and inout
Function mostly used for mathamatical calculations
But procedure used to execute business logics
| Is This Answer Correct ? | 0 Yes | 11 No |
Hi Guys, I have a situation where I need to access the column values from rowtype variable. However, the column names are dynamic. below is sample code: declare Cursor c1 is select * from emp; Cursor c2 is select column_name from xyztable; v_c2 c2%rowtype; v_str varchar2 v_value varchar2(200); begin for rec in c1 loop open c2;---this cursor has column names like EMPLOYEE_ID, FIRST_NAME, LAST_NAME etc. loop fetch c2 into v_c2; exit when c2%notfound; /* now lets say i want to access value of LAST_NAME from cursor c1, so I am writing below code, however it does not work as expected */ v_str:= 'rec.'|| v_c2.column_name; -- this will give me string like "rec.EMPLOYEE_ID" v_value:=v_str; end loop; end loop; end; / Plz help ASAP.Thanks.
How is use pl and sql?
i have a customer table. trans_id trans_date trans_amt debit_credit_indicator 001 01-JAN-13 1099 cr 001 12-JAN-13 500 db 002 24-FEB-13 400 db 002 23-MAR-13 345 cr 001 18-APR-13 800 cr 002 15-MAR-13 600 db 001 12-FEB-13 200 cr i want like this output. trans_id trans_amt debit_credit_indicator i want get highest credit amount and lowest credit amount and highest debit amount and lowest debit amount for each trans_id.
Explain what is dbms?
What is sql deadlock?
Is natural join and inner join same?
Does normalization improve performance?
How do I remove all records from a table?
how to calculate expressions with sql statements? : Sql dba
- Types of triggers - View - Dcl - Procedures, packages, functions - Metasolve - Can use Dcl in triggers - package case study - Cursor and its types - triggers schedule - Wrap - Why we are using fetch and for in cursor. difference?
what is the difference between binary_integer and pls_integer
What is a cursor for loop ?
Oracle (3259)
SQL Server (4518)
MS Access (429)
MySQL (1402)
Postgre (483)
Sybase (267)
DB Architecture (141)
DB Administration (291)
DB Development (113)
SQL PLSQL (3330)
MongoDB (502)
IBM Informix (50)
Neo4j (82)
InfluxDB (0)
Apache CouchDB (44)
Firebird (5)
Database Management (1411)
Databases AllOther (288)