Informix FETCH FIRST, FETCH PRIOR, and FETCH LAST

In addition to the conventional FETCH NEXT, the Informix interface supports FETCH FIRST, FETCH PRIOR, and FETCH LAST statements.

What if you only enter FETCH?

If you only enter FETCH, PowerBuilder assumes FETCH NEXT.

Example

This cursor example illustrates how you can loop through a result set. Assume the default transaction object (SQLCA) has been assigned valid values and a successful CONNECT has been executed.

The statements retrieve rows from the employee table and then display a message box with the employee name in each row that is found.

// Declare the emp_curs 
DECLARE emp_curs CURSOR FOR
   SELECT emp_name FROM EMPLOYEE 
   WHERE emp_state = :sle_1.text;

// Declare a destination variable for employee
// names.
string   emp_name_var 

// Get current value of sle_1.text.
OPEN emp_curs;

// Fetch the first row from the result set.
FETCH emp_curs INTO :emp_name_var;

// Loop through result set until exhausted
DO WHILE SQLCA.sqlcode = 0

// Pop up a message box with the employee name
   MessageBox("Found an employee!",emp_name_var)

// Fetch the next row from the result set
   FETCH emp_curs INTO :emp_name_var;

LOOP

// All done, so close the cursor
CLOSE emp_curs;

Error checking

Although you should test the SQLCode after every SQL statement, these examples show statements to test the SQLCode only to illustrate a specific point.

See also

Informix FETCH statements

Informix FETCH NEXT