From: theofilu@eunet.at
To: pgsql-interfaces@postgresql.org
Subject: RE[2]: [INTERFACES] ecpg and getting just assigned serial number
Date: Mon, 13 Sep 1999 21:02:34 +0200 (MEST)
Message-ID: <199909131902.VAA06721@eunet.at> (raw)
In-Reply-To: <XFMail.990913114903.orsingerc@epg-gw1.lewis.army.mil>
Craig Orsinger <orsingerc@epg-gw1.lewis.army.mil> wrote:
>
> On 13-Sep-99 Andreas Theofilu wrote:
> > I can write such a function, of course. But I will not break
> compatibility
> > to Informix, because both databases, PostgreSQL _and_ Informix are
> > supported in only a single source file.
>
> I've tried to do this myself, and in the long run I think
> you'll be better off planning on having two different versions of
> embedded C, or at least, two different sets of functions that do
> certain operations. Informix ESQL/C and ecpg have significantly
> different syntax, especially regarding CURSORs and FETCHs. If you
> keep things simple, and have some way of converting database names
> between the two systems, you can undoubtedly do what you're trying
> to do. Anything else and it gets really difficult. While Informix
> supports EXEC SQL IFDEF, PostgreSQL does not appear to.
>
It is not always easy to do that and the two are different, but not
completely. However. I use a special preprocessor (lwpp [look at freshmeat
for it]) to create an embedded C file for PostgreSQL 'ecpg' or Informix
'esqlc'. I think this is the better way. Having two source trees would mean
to do everything twice and if I forget something I have two incompatible
programs.
> An alternative might be to have a single source file that
> can be modified by a sed or awk script to conform to whatever
> embedded SQL you're using at the moment. I considered this approach,
> but didn't pursue it because I didn't have the time.
>
look above.
> We had a discussion here about this subject in June. The
> subject was "esql/c documentation". If you can't find it in the
> archive, I can e-mail some of the more interesting posts in that
> thread.
>
Thanks for that tip, will search for it.
--
Theofilu Andreas
http://members.eunet.at/theofilu
-------------------------------------------------
Enjoy the science of Linux!
Genieße die Wissenschaft von Linux!
-------------------------------------------------
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-interfaces@postgresql.org
Cc: theofilu@eunet.at
Subject: Re: RE[2]: [INTERFACES] ecpg and getting just assigned serial number
In-Reply-To: <199909131902.VAA06721@eunet.at>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox