DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

ecpg(1)




ECPG(1)          PostgreSQL Client Applications           ECPG(1)


NAME

     ecpg - embedded SQL C preprocessor


SYNOPSIS

     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  corresponding C output file. Input files preferably
     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 in the documentation for more information on
     that topic.


OPTIONS

     ecpg accepts the following command-line arguments:

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

     -C mode
          Set a compatibility  mode.  mode  may  be  INFORMIX  or
          INFORMIX_SE.

     -D symbol
          Define a C preprocessor symbol.

     -i   Parse system include files as well.

     -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

Application          Last change: 2008-01-03                    1

ECPG(1)          PostgreSQL Client Applications           ECPG(1)

          given filename.

     -r option
          Selects a run-time behavior. Currently, option can only
          be no_indicator.

     -t   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.

     -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 Post-
     greSQL include directory. Therefore, one might have  to  use
     the   -I   option   when   invoking   the   compiler  (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 linker
     options -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  create  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

Application          Last change: 2008-01-03                    2


Man(1) output converted with man2html