On 2011-02-01, Amish <amish.pandya@in.com> wrote:
>
> Hi
> EXEC SQL BEGIN DECLARE SECTION;
> struct rid_ds
> {
> double de_re_rid;
> double de_re_xrid;
> FILE *fp;
> } dbinfo_t;
> dbinfo_t dbval;
> EXEC SQL END DECLARE SECTION;
> ERROR: invalid datatype 'FILE'
it looks to me like ecpg doesn't know how to convert FILE*
into an SQL value.
I'd say try it without the "EXEC SQL BEGIN DECLARE SECTION;"
but from inspection it appears not to be valid C either.
> The same code compiles using esqlc without any problem. Is there any way to
> fix about error
start by reading the the esqlc manual to figure out how the rules
of C change inside "EXEC SQL BEGIN DECLARE SECTION;".
file:///usr/share/doc/postgresql-doc-8.4/html/ecpg-preproc.html
suggests that "EXEC SQL INCLUDE stdio.h" might help
but that's not going to fix the broken C code two lines after the
error it's finding.
--
⚂⚃ 100% natural