BUG #1164: Informix compatibility ecpg - Mailing list pgsql-bugs

From PostgreSQL Bugs List
Subject BUG #1164: Informix compatibility ecpg
Date
Msg-id 20040614230837.774D4CF4CCF@www.postgresql.com
Whole thread Raw
Responses Re: BUG #1164: Informix compatibility ecpg
List pgsql-bugs
The following bug has been logged online:

Bug reference:      1164
Logged by:          John Smith

Email address:      john@roundel.net

PostgreSQL version: 7.4

Operating system:   Linux 2.4 [Fedora core 1]

Description:        Informix compatibility ecpg

Details:

O/S: Linux 2.4 [Fedora core 1]
PostgreSQL 7.4.2
command line:
ecpg -t prog.pgc -C INFORMIX  -o prog.c

I'm Converting a project from Informix to PostgreSQL, and intended to make
use of Informix compatibility mode to speed the process. I understand that
some core differences (error handling for example) cannot easily be
automated.

I've found some incompatibles though that seem to me could be catered for:

In Informix ESQL/C, columns can be defined using the same string that's used
to describe the field when describing the table. Hence "integer" will work
in esql, but not in ecpg.

Informix treats the single and double quote as synonyms in SELECT
statements. Thus
... WHERE countries.country_code = "UK"
is valid in Informix, but in PostgreSQL needs to be re-written as
... WHERE countries.country_code = 'UK'.
The error message for this is not obvious to a programmer brought up on
informix, as it refers to a column called "UK" that does not exist.

A SELECT from a NULL field in Informix is trapped using the Informix call
"risnull()". Although this function is provided with ecpg, null values were
not successfully trapped, and I had to resort to using the PostgreSQL
standard indicator variables. I can supply more details on this one on
request, as it's C code that probably doesn't belong here.


Generally though, I've been unable to find any documentation on the
Informix-compatibility mode.


Regards,

pgsql-bugs by date:

Previous
From: Tom Lane
Date:
Subject: Re: \w doesn't match non-ASCII letters
Next
From: Bruce Momjian
Date:
Subject: Re: PostgreSQL does not have native spinlock support on this