BEGIN-END DECLARE SECTION
- Last Updated: January 17, 2024
- 2 minute read
- OpenEdge
- Version 12.8
- Documentation
Declares variables and types used by the precompiler. Any variables you
refer to in an embedded SQL statement must be declared in a DECLARE
SECTION. This topic starts with a BEGIN DECLARE
SECTION statement and ends with an END DECLARE SECTION
statement. Each variable must be declared as a host language data type.
Syntax
|
- host_lang_type variable_name ;
-
A conventional C Language variable declaration. This form of variable declaration conforms to the ANSI standard for the C Language.
Uses the following syntax:
{ char | short | long | float | double }
Notes
- The C Language type int is not supported by ESQL. Type int maps to 16 or 32 bits, depending on the machine architecture. This can create rounding errors at run time, as values are passed across different machine architectures.
- Variables you declare in a
BEGIN‑END DECLARE SECTIONcan be used in C Language statements as if they are declared outside theDECLARE SECTION. - The scope of variables follows host language scoping rules.
The ESQL variables are not visible outside the file in which they
are declared.
DECLAREsections are permissible only where host language declarations are permissible in the host language syntax. This restriction is due to howDECLARE SECTIONblocks are translated into the main body of host language declarations. - Avoid
DECLAREsections in header files that are included by more than one source file. This can cause duplicate variables with the same name. - The form of the variable created by ESQL for each type is specified so that it can be manipulated from host language statements. Declaring variables allows you to use the variables in both host language and embedded SQL statements.
Example
|