Re: ECPG bug: PRAPARE FOR

From: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
To: 1250kv <1250kv(at)gmail(dot)com>
Cc: PostgreSQL mailing lists <pgsql-bugs(at)lists(dot)postgresql(dot)org>
Subject: Re: ECPG bug: PRAPARE FOR
Date: 2020-10-20 17:00:20
Message-ID: CAKFQuwZTmZrNDjLUo-VZxLEpQqo0Sn82-8tkOSiZ02cnLq2D3w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Tue, Oct 20, 2020 at 9:47 AM 1250kv <1250kv(at)gmail(dot)com> wrote:

> Hello
> I have code:
>
> void main()
> {
> char *foo = "CALL "My_Proc"(?)";
> EXEC SQL char *stmt = foo;
> EXEC SQL PREPARE prep_stmt FROM :stmt;
>
> EXEC SQL char *stmt2 = "CALL \x22OMy_Proc\x22(?)";
> EXEC SQL PREPARE prep_stmt2 FROM :stmt2;
>
> EXEC SQL PREPARE prep_stmt3 FROM "CALL "My_Proc"(?)";
> }
>
> ecpg --version
> ecpg (PostgreSQL) 13.0 (Ubuntu 13.0-1.pgdg20.04+1)
>
> ecpg sample.pgc -o sample.c
> sample.pgc:10: ERROR: syntax error at or near "My_Proc"
>

General usage questions regarding PostgreSQL and ECPG should be sent to the
-general list.

I don't know the correct answer here but maybe using dollar quoting within
the PostgreSQL SQL statement instead of double-quotes will help. Something
like:

prepare prep_stat3 from "call $$My_Proc$$()";

Asking an actual question does help others to figure out where you are
confused instead of just guessing.

David J.

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2020-10-20 17:23:18 Re: ECPG bug: "unterminated quoted identifier"
Previous Message David G. Johnston 2020-10-20 16:56:49 Re: ECPG bug: "unterminated quoted identifier"