Answer Posted / anil
1.REF CURSOR is basically a data type. It is normally declared as type r_cursor is REF CURSOR.
CURSOR is not a datatype.
2.REF CURSOR is dynamic , CURSOR is static
3.REF CURSOR can be passed from one procedure to other procedure but CURSOR cant be passed from one procedure to other.
4. A ref cursor can not be used in CURSOR FOR LOOP, it must be used in simple CURSOR LOOP statement.
5. A ref cursor is defined at runtime and can be opened dynamically but a regular cursor is static and defined at compile time.
6. A ref cursor can be passed to another PL/SQL routine (function or procedure) or returned to a client. A regular cursor cannot be returned to a client application and must be consumed within same routine.
7) A ref cursor incurs a parsing penalty because it cannot cached but regular cursor will be cached by PL/SQL which can lead to a significant reduction in CPU utilization.
8) A regular cursor can be defined outside of a procedure or a function as a global package variable. A ref cursor cannot be; it must be local in scope to a block of PL/SQL code.
9) A regular cursor can more efficiently retrieve data than ref cursor. A regular cursor can implicitly fetch 100 rows at a time if used with CURSOR FOR LOOP. A ref cursor must use explicit array fetching.
Is This Answer Correct ? | 7 Yes | 0 No |
Post New Answer View All Answers
What has stored procedures in sql and how we can use it?
How can a function retun more than one value in oracle with proper example?
Lookups are a key component in sql server integration services (ssis). Explain its purpose?
Differentiate between sga and pga.
How do I create a sql database?
Is record in oracle pl sql?
How do I create an index in word?
What is meant by truncate in sql?
What are aggregate functions in sql?
Who is the owner of mysql database?
How do I enable sql encryption?
What is posting?
Write a sql query to convert all character to uppercase after hypen.
What are the set operators in sql?
What are the conditions an underlying table must satisfy before a cursor can be used by a positioned update or delete statement? : Transact sql