Prentice Hall Oracle Plsql By Example 3Rd Edition [Electronic resources]

Benjamin Rosenzweig

نسخه متنی -صفحه : 289/ 115
نمايش فراداده

Lab 9.2 Using Cursor FOR Loops and Nesting Cursors

Lab Objectives

After this Lab, you will be able to:

Use a Cursor FOR Loop

Process Nested Cursors

There is an alternative method of handling cursors. It is called the cursor FOR loop because of the simplified syntax that is used. When using the cursor FOR loop, the process of opening, fetching, and closing is handled implicitly. This makes the blocks much simpler to code and easier to maintain.

The cursor FOR loop specifies a sequence of statements to be repeated once for each row returned by the cursor. Use the cursor FOR loop if you need to FETCH and PROCESS each and every record from a cursor.

FOR EXAMPLE

Assume the existence of a table called log with one column.

create table table_log (description VARCHAR2(250)); -- ch09_7a.sql DECLARE CURSOR c_student IS SELECT student_id, last_name, first_name FROM student WHERE student_id < 110; BEGIN FOR r_student IN c_student LOOP INSERT INTO table_log VALUES(r_student.last_name); END LOOP; END;