attached is our latest patch extending ECPG:
1. Support computed cursorname (DECLARE :cursorname ..., etc)
No change in that part, it's purely a parser-only change, there's no
ECPGdo() change you criticized or any other bad juju. Because of
adding support for :cursorname and the dynamically generated
ECPG grammar, we needed to modify the main gram.y as well,
to make way for computed cursor names. The fetch_direction and
FetchStmt change was needed in gram.y because otherwise
"FETCH fetch_direction from_in cursor_name" and
"MOVE fetch_direction from_in cursor_name" rules caused
shift/reduce conflicts in the "fetch_direction" rule in ECPG grammar.
This modification was a little sacrifice in gram.y but it allowed
keeping the ECPG grammar clean and little change in the automatic
2. Support SQLDA structure in ECPG, both in USING DESCRIPTOR
and INTO DESCRIPTOR, if Informix-compatible mode is set.
This means the following changes
- introduce the pg_sqlda_t and pg_sqlvar_t structures, ECPGt_sqlda type
and SQLNNN contants in sqltypes.h
- make a distinction between DESCRIPTOR and SQL DESCRIPTOR
in Informix mode
- Support FETCH ... USING DESCRIPTOR in Informix mode only,
that works the same way as FETCH ... INTO DESCRIPTOR.
3. Support DESCRIBE OUTPUT
The support was added as a new, exported ECPGdescribe2() function
in descriptor.c, the old unsupported ECPGescribe() interface was
so the libecpg.so major library version doesn't need to be changed.
Bible has answers for everything. Proof:
"But let your communication be, Yea, yea; Nay, nay: for whatsoever is more
than these cometh of evil." (Matthew 5:37) - basics of digital technology.
"May your kingdom come" - superficial description of plate tectonics
Cybertec Schönig & Schönig GmbH
pgsql-hackers by date
|Next:||From: Peter Eisentraut||Date: 2009-06-24 10:07:52|
|Subject: Re: dblink for 8.4 should work without user-mappings|
|Previous:||From: Brendan Jurd||Date: 2009-06-24 09:38:26|
|Subject: Re: BUG #4862: different results in to_date() between 8.3.7 & 8.4.RC1|