Name
ecobpg -- embedded SQL COBOL preprocessor
Synopsis
ecobpg [option...] file...
Description
ecobpg is the embedded SQL preprocessor for COBOL programs. It converts COBOL programs with embedded SQL statements to normal COBOL code by replacing the SQL invocations with special function calls. The output files can then be processed with any COBOL compiler tool chain.
ecobpg will convert each input file given on the command line to the corresponding COBOL output file. Input files preferably have the extension .pco, in which case the extension will be replaced by .cob to determine the output file name. If the extension of the input file is not .pco, then the output file name is computed by appending .cob to the full file name. The output file name can also be overridden using the -o option.
Options
ecobpg accepts the following command-line arguments:
Automatically generate certain COBOL code from SQL code. Currently, this works for EXEC SQL TYPE.
Specify an additional include path, used to find files included via EXEC SQL INCLUDE. Defaults are . (current directory), /usr/local/include, the PostgreSQL include directory which is defined at compile time (default: /usr/local/pgsql/include), and /usr/include, in that order.
Specifies that ecobpg should write all its output to the given filename.
Selects run-time behavior. Option can be one of the following:
Prepare all statements before using them. Libecpg will keep a cache of prepared statements and reuse a statement if it gets executed again. If the cache runs full, libecpg will free the least used statement.
Allow question mark as placeholder for compatibility reasons. This used to be the default long ago.
Turn on autocommit of transactions. In this mode, each SQL command is automatically committed unless it is inside an explicit transaction block. In the default mode, commands are committed only when EXEC SQL COMMIT is issued.
When converting VARCHAR host variable, adding name of the variable to members as prefix. Instead of LEN and ARR, (varname)-ARR and (varname)-LEN will be used.
Print additional information including the version and the "include" path.
Print the ecobpg version and exit.
Show help about ecobpg command line arguments, and exit.
Notes
When compiling the preprocessed COBOL code files, the compiler needs to be able to find the ECOBPG library text files in the PostgreSQL include directory. Therefore, you might have to use the -I option when invoking the compiler.
Programs using COBOL code with embedded SQL have to be linked against the libecpg library, for example using the linker options.
The value of either of these directories that is appropriate for the installation can be found out using pg_config.
See
Refer to "pg_config" in "Reference" in the PostgreSQL Documentation.
Examples
If you have an embedded SQL COBOL source file named prog1.pco, you can create an executable program using the following command:
ecobpg prog1.pco