From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Igor Korot <ikorot01(at)gmail(dot)com> |
Cc: | "pgsql-generallists(dot)postgresql(dot)org" <pgsql-general(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Error on query execution |
Date: | 2025-03-05 02:37:00 |
Message-ID: | 225733.1741142220@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
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 ...
> 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
From | Date | Subject | |
---|---|---|---|
Next Message | me nefcanto | 2025-03-05 04:40:09 | Quesion about querying distributed databases |
Previous Message | Igor Korot | 2025-03-05 02:21:33 | Error on query execution |