Informix FETCH

To access rows returned in a result set, you use the FETCH statement the same way you use it for cursors. The FETCH statement can be executed after any EXECUTE statement that refers to a procedure that returns a result set.

Informix syntax

PowerBuilder supports Informix syntax; however, the default syntax displayed in the DataWindow painter is the most general syntax. You can leave the syntax unchanged or edit the displayed syntax to conform to the Informix syntax rules. If you do not change the syntax, PowerBuilder converts it to Informix syntax before passing it to the Informix database.

Example 1

FETCH emp_proc INTO :emp_name_var; 

You can use this FETCH statement only to access values produced with a SELECT statement in a database stored procedure. You cannot use the FETCH statement to access computed rows.

The result sets that will be returned when a database stored procedure executes cannot be determined at compile time. Therefore, you must code FETCH statements that exactly match the format of a result set returned by the stored procedure when it executes.

Example 2

Assume you changed the second fetch statement in the preceding statement to:

FETCH emp_proc2 INTO :part_var1,:part_var2,:part_var3;

The code would compile without errors, but an execution error would occur because the number of columns in the FETCH statement does not match the number of columns in the current result set. The second result set returns values from only one column.