Re: BUG #3951: SELECT ... WHERE Param = ? does not work if Param is of type bytea

Поиск
Список
Период
Сортировка
От Vincent D'Haene
Тема Re: BUG #3951: SELECT ... WHERE Param = ? does not work if Param is of type bytea
Дата
Msg-id BAY124-W3640B67940655434EBE19AFE1C0@phx.gbl
обсуждение исходный текст
Ответ на Re: BUG #3951: SELECT ... WHERE Param = ? does not work if Param is of type bytea  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs
Hi Tom,

Tx for you really clear answer, it helped a lot.

I just found the problem and it could indeed be seen as a bug in my code, a=
lthough that very same piece of code works without any problem on MSSQL 2K,=
 MSSQL 2K5, MSSQL Express, Oracle 9i, Oracle 10, MySQL 5.0 and MySQL 5.1.

The problem was the following:

When specifying the following statement:

  SQLBindParameter(hStmt, 1, SQL_PARAM_INPUT, SQL_C_BINARY, SQL_BINARY, 16,=
 0, ValuePtr, 16, &IndPtr)

and the column bound is of binary type (BYTEA, IMAGE, BLOB, ...), the IndPt=
r must contain the length of the data passed in ValuePtr.

In my code I had it set to 0 (because I already specified the length of the=
 field in the DataLen parameter), which doesn't seem to work for postgresql.


Regards and have a nice day, Vincent


> To: vincent_dhaene@hotmail.com
> CC: pgdev@xs4all.nl; pgsql-bugs@postgresql.org
> Subject: Re: [BUGS] BUG #3951: SELECT ... WHERE Param =3D ? does not work=
 if Param is of type bytea=20
> Date: Thu, 21 Feb 2008 13:30:02 -0500
> From: tgl@sss.pgh.pa.us
>=20
> "Vincent D'Haene" <vincent_dhaene@hotmail.com> writes:
> > My problem is that it seems that in postgresql you can't use a paramete=
r bound to BYTEA data in the WHERE clause of the SQL statement.
>=20
> The above claim is nonsense.
>=20
> > So in my case: "SELECT x FROM T WHERE BinData =3D ?" does not work (ret=
urn code -1) if the parameter bound to the ? is of type BYTEA.
>=20
> I'm guessing that you've got an ODBC problem.  That could be a bug in
> your code, or less likely a bug in the ODBC driver you're using.
> Since you haven't specified which driver or which version of the driver
> you're using, nor provided a test case to run, it's difficult for anyone
> else to investigate it.
>=20
>             regards, tom lane

_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today it's FREE!
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/=

В списке pgsql-bugs по дате отправления:

Предыдущее
От: "Andy Satori"
Дата:
Сообщение: BUG #3978: plperl configure / build process behavior wrt Universal Binaries
Следующее
От: Simon Riggs
Дата:
Сообщение: Re: Incomplete docs for restore_command for hot standby