Invocación estática de una instrucción SELECT

Una sentencia SELECT puede invocarse estáticamente de diferentes maneras.

Puede incluir una instrucción SELECT como parte de la instrucción (no ejecutable) DECLARE CURSOR. Dicha declaración se ejecuta cada vez que se abre el cursor mediante la declaración (incrustada) OPEN. Una vez abierto el cursor, puede recuperar la tabla de resultados fila a fila mediante ejecuciones sucesivas de la instrucción SQL FETCH (incrustada).

Si la aplicación utiliza Db2 for z/OS® ODBC la sentencia SELECT se prepara primero con la llamada a la función SQLPrepare. A continuación, se ejecuta con la llamada a la función SQLExecute. A continuación, los datos se obtienen con la llamada a la función SQLFetch. La aplicación no abre explícitamente el cursor.

La sentencia SELECT utilizada de esta manera puede contener referencias a variables de host. Estas referencias se sustituyen efectivamente por los valores que tienen las variables en el momento de ejecutar OPEN.

La ejecución exitosa o fallida de la instrucción SELECT se indica mediante los valores devueltos en los campos SQLCODE y SQLSTATE en el SQLCA después del OPEN. Debe comprobar los campos como se describe anteriormente para ver si hay declaraciones incrustadas.

Si la aplicación utiliza Db2 for z/OS ODBC la ejecución correcta de la sentencia SELECT se indica mediante el código de retorno de la llamada a la función SQLExecute. Si es necesario, la aplicación puede recuperar la SQLCA llamando a la función SQLGetSQLCA.