What is diff between bulk collect and forall
Answers were Sorted based on User's Feedback
Answer / prabu t
Bulk collect:
*is a CLAUSE
*is used to fetch the records from the cursor.
Forall:
*is a STATEMENT
*is used to do dml operation of fetched records.
*The body of the FORALL statement is a single DML statement
-- an INSERT, UPDATE, or DELETE.
Is This Answer Correct ? | 21 Yes | 1 No |
Answer / prabhudatta barick
#"The keywords BULK COLLECT tell the SQL engine to bulk-bind output collections before returning them to the PL/SQL engine.
#You can use these keywords in the SELECT INTO, FETCH INTO, and RETURNING INTO clauses. Here is the syntax:
... BULK COLLECT INTO collection_name[, collection_name] ..."
#"The keyword FORALL instructs the PL/SQL engine to bulk-bind input collections before sending them to the SQL engine.
Although the FORALL statement contains an iteration scheme, it is not a FOR loop. Its syntax follows:
FORALL index IN lower_bound..upper_bound
sql_statement;
The index can be referenced only within the FORALL statement and only as a collection subscript.
The SQL statement must be an INSERT, UPDATE, or DELETE statement that references collection elements. And, the bounds must specify a valid range of consecutive index numbers.
The SQL engine executes the SQL statement once for each index number in the range."
Is This Answer Correct ? | 5 Yes | 0 No |
Answer / shweta singh
BULK COLLECT: SELECT statements that retrieve multiple rows with a single fetch, improving the speed of data retrieval
FORALL: INSERTs, UPDATEs, and DELETEs that use collections to change multiple rows of data very quickly.
Is This Answer Correct ? | 2 Yes | 0 No |
Find out the 3rd highest salary?
51 Answers BirlaSoft, DAC, Silvia Infotech, Sutra Infotech,
what are %TYPE and %ROWTYPE? what is the difference?
7 Answers ICICI, Saama Tech, Sail,
What is the best sql course?
How do I run a pl sql procedure in sql developer?
Which is better join or subquery?
What is the relation b/w view and trigger
What does sql stand for?
What are the sql aggregate functions?
What is a full join?
Why select is used in sql?
what is data integrity? : Sql dba
What is error ora-01000: maximum open cursors exceeded