HP 3000 Manuals

Review of Preprocessing Events [ ALLBASE/SQL Pascal Application Programming Guide ] MPE/iX 5.0 Documentation


ALLBASE/SQL Pascal Application Programming Guide

Review of Preprocessing Events 

All embedded SQL statements must be preprocessed before they can be
executed.  Preprocessing may be done by running the Pascal preprocessor
during application development, or it may be done for dynamic commands
when the program is run.  Preprocessing does the following:

   *   Checks syntax:  The syntax of SQL commands and host variable
       declarations must be correct.

   *   Verifies the existence of objects:  Any object named in an SQL
       command must exist.

   *   Optimizes data access:  If the statement accesses data, the
       fastest way to access the data must be determined.

   *   Checks authorizations:  Both the program owner and the executor
       must have the required authorities.

   *   Creates sections:  ALLBASE/SQL creates sections for SQL commands
       when this is appropriate.  At run time, the section is executed.

These preprocessing events take place for all non-dynamic SQL commands
when you run the ALLBASE/SQL preprocessor.  Non-dynamic commands are
fully defined in the source code and are preprocessed before run time.
So far, most of the examples in this manual have shown non-dynamic
preprocessing.

ALLBASE/SQL completes the preprocessing of dynamic commands at run time,
in an event known as dynamic preprocessing.  Any SQL command except the
following, which do not require sections for execution, can be
preprocessed at run time: 

     BEGIN DECLARE SECTION           FETCH
     CLOSE CURSOR                    INCLUDE
     DECLARE CURSOR                  OPEN CURSOR
     DELETE WHERE CURRENT            PREPARE
     DESCRIBE                        SQLEXPLAIN
     END DECLARE SECTION             UPDATE WHERE CURRENT
     EXECUTE                         WHENEVER
     EXECUTE IMMEDIATE

Dynamic commands that are not queries can be preprocessed at run time
using the PREPARE and EXECUTE statements or the EXECUTE IMMEDIATE
statement.  Dynamic queries are preprocessed using the PREPARE and
DESCRIBE commands in conjunction with the SQLDA or SQL Description Area
(SQLDA). These statements and data structures, used with a cursor, are
described further in a later section.



MPE/iX 5.0 Documentation