ecpg – linux man page

August 28th, 2009 | Tags:

ecpg – embedded SQL C preprocessor

USAGE
       ecpg [ option... ] file...

DESCRIPTION
       ecpg  is  the  embedded  SQL preprocessor for C programs. It converts C
       programs with embedded SQL statements to normal C code by replacing the
       SQL  invocations with special function calls. The output files can then
       be processed with any C compiler tool chain.

       ecpg will convert each input file given on the command line to the cor-
       responding  C  output  file. Input files preferrably have the extension
       .pgc, in which case the extension will be replaced by .c  to  determine
       the  output  file name. If the extension of the input file is not .pgc,
       then the output file name is computed by appending .c to the full  file
       name.  The output file name can also be overridden using the -o option.

       This reference page does not describe the embedded SQL  language.   See
       the PostgreSQL Programmer’s Guide for that.

OPTIONS
       ecpg accepts the following command-line arguments:

       -c     Automatically  generate  C  code  from SQL code. Currently, this
              works for EXEC SQL TYPE.

       -D symbol
              Define a C preprocessor symbol.

       -I directory
              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.

       -o filename
              Specifies that ecpg should write all its  output  to  the  given
              filename.

       -t     Turn  on autocommit of transactions. In this mode, each query is
              automatically committed unless it is inside an explicit transac-
              tion block. In the default mode, queries are committed only when
              EXEC SQL COMMIT is issued.

       -v     Print additional  information  including  the  version  and  the
              include path.

       ---help
              Show a brief summary of the command usage, then exit.

       --version
              Output version information, then exit.

NOTES
       When  compiling the preprocessed C code files, the compiler needs to be
       able to find the ECPG header files in the PostgreSQL include directory.
       Therefore,  one  might have to use the -I option when invoking the com-
       piler (e.g., -I/usr/local/pgsql/include).

       Programs using C code with embedded SQL have to be linked  against  the
       libecpg  library,  for  example  using the flags -L/usr/local/pgsql/lib
       -lecpg.

       The value of either of these directories that is  appropriate  for  the
       installation can be found out using pg_config(1).

EXAMPLES
       If you have an embedded SQL C source file named prog1.pgc, you can cre-
       ate an executable program using the following sequence of commands:

       ecpg prog1.pgc
       cc -I/usr/local/pgsql/include -c prog1.c
       cc -o prog1 prog1.o -L/usr/local/pgsql/lib -lecpg

SEE ALSO
       PostgreSQL Programmer’s Guide for a more detailed  description  of  the
       embedded SQL interface

Comments are closed.