SQL/MX 3.2 Programming Manual for C and COBOL (H06.25+, J06.14+)
Program and Module Management
HP NonStop SQL/MX Release 3.2 Programming Manual for C and COBOL—663854-002
17-11
How Modules Are Named
In this example, no default catalog or schema are in effect and no module directive
exists.
SQLMX_DEFAULT_CATALOG_.SQLMX_DEFAULT_SCHEMA_.SQLMX_DEFAULT_MODUL
E_2119439730011160670 (on PC)
GROUP.USER.SQLMX_DEFAULT_MODULE_2119439730011160670 (on NSK)
In addition to the three-part module name determined by the MODULE directive or by
the system, you can pass these optional module management attributes to the SQL
preprocessor:
Catalog
Schema
Target or table set
Version
Group
You specify these attributes with the preprocessor option -g and without changing the
MODULE directive in the source file. The preprocessor applies the catalog and
schema and the target (or table set), version, and group attributes to the processed,
three-part module name to create an externally qualified module name.
The externally qualified module name consists of the three-part module name plus the
module management attributes delimited by circumflex (^) characters:
CAT.SCH.GRP^MOD^TABLESET^VER
The preprocessor embeds the externally qualified module name in the module
definition. During SQL compilation, the SQL/MX compiler uses the externally qualified
module name in the module definition to name the module file. During run time, the
SQL/MX executor uses the externally qualified module name to locate the associated
module file and its compiled query execution plan.
Externally qualified module names enable the coexistence of modules that use the
same three-part module names, provided that you use a different target or version
attribute during preprocessing. For example:
CAT.SCH.^MOD^TABLESET1^VERSION1
CAT.SCH.^MOD^TABLESET2^VERSION1
CAT.SCH.^MOD^TABLESET2^VERSION2
You can also use the group attribute for coexistence, but that is not its main purpose.
For more information on the group attribute, see Grouping on page 17-23.
For information on the exact -g syntax for your development environment and
application language, see:
Syntax for the OSS-Hosted SQL/MX C/C++ Preprocessor on page 15-20
Syntax for the Windows-Hosted SQL/MX C/C++ Preprocessor on page 15-28
Syntax for the OSS-Hosted SQL/MX COBOL Preprocessor on page 16-14










