Cursors provide access to individual rows of a result table.
A result table is a temporary collection of columns and rows
from one or more tables or views. For cursors, the result table
is specified by the select expression in the DECLARE CURSOR
statement.
Unlike other result tables, the result table for a cursor
can exist throughout execution of more than one statement.
Host language programs require cursors because programs must
perform operations one row at a time, and therefore can execute
statements more than once to process an entire result table.
You name the result table for a cursor in the DECLARE CURSOR
statement and refer to that name in OPEN, CLOSE, FETCH, UPDATE,
and DELETE statements. You cannot qualify cursor names.