Re: Error on query execution

From: Igor Korot <ikorot01(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: "pgsql-generallists(dot)postgresql(dot)org" <pgsql-general(at)lists(dot)postgresql(dot)org>
Subject: Re: Error on query execution
Date: 2025-03-06 00:55:05
Message-ID: CA+FnnTw5k=0_WT1j1hDKRPQMaF8=Y449Z1NoP-iMiU1LTTqHkQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Tom,

On Tue, Mar 4, 2025, 8:37 PM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:

> Igor Korot <ikorot01(at)gmail(dot)com> writes:
> > binaryIntVal = htonl( (uint32_t) type );
> > paramValues[0] = (char *) &binaryIntVal;
> > paramLengths[0] = sizeof( binaryIntVal );
> > paramFormats[0] = 1;
>
> You're apparently trying to pass this parameter as an int4 ...
>

I thought only binary or text is allowed as parameters.

Guess I was wrong...

Thank you.

> > res = PQexecParams( m_db, "SELECT * FROM abcatfmt WHERE abf_type =
> > $1", 1, nullptr, paramValues, paramLengths, paramFormats, 1 );
>
> ... but given that you didn't specify any data type, I think the
> parser will fall back to assuming that $1 is the same type as
> "abf_type", whatever that is. Passing data in binary is not at all
> forgiving about getting the data type right.
>
> regards, tom lane
>

In response to

Browse pgsql-general by date

  From Date Subject
Next Message me nefcanto 2025-03-06 02:43:39 Re: Quesion about querying distributed databases
Previous Message Fujii Masao 2025-03-05 23:54:59 Re: Disabling vacuum truncate for autovacuum