Professional Documents
Culture Documents
Scroll Cursors 2
Scroll Cursors 2
➔ OPEN CURSOR – THIS READIES THE CURSOR FOR ROW RETRIEVAL. OPEN
IS AN EXECUTABLE STATEMENT. IT READS THE SQL SEARCH FIELDS ,
EXECUTES THE SQL STATEMENT AND SOMETIMES BUILD THE RESULT
TABLE.
EXAMPLE:
EXEC SQL
DECLARE CURSOR_NAME CURSOR FOR
SELECT EMPNO,EMPNAME
FROM EMPLOYEE
WHERE DEPT= : PA-DEPT
FOR UPDATE OF SALARY
END-EXEC.
SCROLLABLE CURSORS
IF YOU WANT TO ORDER THE ROWS OF THE CURSOR'S RESULT SET, AND YOU
ALSO WANT THE CURSOR TO BE UPDATABLE, YOU NEED TO DECLARE THE
CURSOR AS SCROLLABLE, EVEN IF YOU USE IT ONLY TO RETRIEVE ROWS
SEQUENTIALLY. YOU CAN USE THE ORDER BY CLAUSE IN THE DECLARATION OF
AN UPDATABLE CURSOR ONLY IF YOU DECLARE THE CURSOR AS SCROLLABLE.
INSENSITIVE SCROLL CURSORS
➔ THE SIZE, THE ORDER OF THE ROWS, AND THE VALUES FOR EACH ROW OF
THE RESULT TABLE DO NOT CHANGE AFTER THE APPLICATION OPENS THE
CURSOR.
➔ THE FETCH STATEMENT EXECUTES AGAINST THE BASE TABLE, THE CURSOR
NEEDS NO TEMPORARY RESULT TABLE. WHEN YOU DEFINE A CURSOR AS
SENSITIVE DYNAMIC, YOU CANNOT SPECIFY THE INSENSITIVE KEYWORD
IN A FETCH STATEMENT FOR THAT CURSOR.
KEYWORDS
THE FOLLOWING KEY WORDS ARE SUPPORTED WHEN FETCHING DATA FROM A
SCROLLABLE CURSOR:
TABLE 1:
[OPTIONS AVAILABLE FOR FETCHING RECORDS]
NEXT WILL FETCH THE NEXT ROW
PRIOR WILL FETCH THE PREVIOUS ROW
FIRST WILL FETCH THE FIRST ROW
LAST WILL FETCH THE LAST ROW
CURRENT WILL RE-FETCH THE CURRENT ROW
BEFORE WILL POSITION THE CURSOR BEFORE THE FIRST ROW
AFTER WILL POSITION THE CURSOR AFTER THE LAST ROW
ABSOLUTE N WILL FETCH THE ROW THAT IS N ROWS AWAY FROM THE
FIRST ROW
RELATIVE N WILL FETCH THE ROW THAT IS N ROWS AWAT FROM THE
LAST ROW FETCHED
OPEN-CURSOR.
EXEC SQL
OPEN JD
END-EXEC.
RELATIVE-FETCH.
EXEC SQL
FETCH SENSITIVE REALTIVE :WS-FETCH-NO
FROM JD INTO :NAME , :AGE
END-EXEC.
HERE YOU CAN MOVE -1, +1 OR THE REQUIRED RELATIVE NUMBER TO :WS-
FETCH-NO .
SIMILARLY YOU CAN USE THE OTHER KEYWORDS DISCUSSED BEFORE IN
TABLE-1.
DOCUMENT PREPARED BY:
NAME : JAVEED AHMED
EMAIL ID : JaveedAhmed111@Gmail.Com