Re: Search content within a bytea field - Mailing list pgsql-jdbc

From Tom Lane
Subject Re: Search content within a bytea field
Date
Msg-id 4017.1251673129@sss.pgh.pa.us
Whole thread Raw
In response to Re: Search content within a bytea field  (Sylvain Leroux <sl20@wanadoo.fr>)
Responses Re: Search content within a bytea field  (Sylvain Leroux <sl20@wanadoo.fr>)
Re: Search content within a bytea field  (Damiano Bolzoni <damiano.bolzoni@gmail.com>)
List pgsql-jdbc
Sylvain Leroux <sl20@wanadoo.fr> writes:
> It seems to me that the problem is comming from the BYTEA type, not from
> the prepared statement by itself: As far as I know the only operator
> supported by BYTEA is concatenation. You can't even compare two BYTEA
> for (in)equality - even less using the LIKE operator.

Nonsense ...

regression=# select oid::regoperator from pg_operator where oprleft = 'bytea'::regtype or oprright = 'bytea'::regtype;
       oid
------------------
 =(bytea,bytea)
 <>(bytea,bytea)
 <(bytea,bytea)
 <=(bytea,bytea)
 >(bytea,bytea)
 >=(bytea,bytea)
 ~~(bytea,bytea)
 !~~(bytea,bytea)
 ||(bytea,bytea)
(9 rows)

But this does point out the problem: LIKE (a/k/a ~~) on a bytea wants
a bytea on the righthand side, not text or varchar.  So setString is
the wrong thing to use.

            regards, tom lane

pgsql-jdbc by date:

Previous
From: Sylvain Leroux
Date:
Subject: Re: Search content within a bytea field
Next
From: Sylvain Leroux
Date:
Subject: Re: Search content within a bytea field