Re: Error: Operator does not exist: "char"=integer

Поиск
Список
Период
Сортировка
От novnov
Тема Re: Error: Operator does not exist: "char"=integer
Дата
Msg-id 21079266.post@talk.nabble.com
обсуждение исходный текст
Ответ на Re: Error: Operator does not exist: "char"=integer  (Julius Tuskenis <julius.tuskenis@gmail.com>)
Список pgsql-general
The error went away; I updated the admin tool I use (pg lightning admin) and
that seemed to help.


Thanks everyone.


Julius Tuskenis-2 wrote:
>
> Raymond O'Donnell rašė:
>> A lot of previously automatic casts were removed in the 8.3 series -
>> this is possibly one of them.
>>
>> You now need to cast explicitly in such cases, e.g.
>>
>>   select '5'::integer;
>>
>> Ray.
>>
> That is a good advice and a good practice. But the solution usually
> takes time. For a quick (temporary) solution you could write your own
> operator for handling "char" = integer cases.
>
> I had to do it once for an "integer ILIKE text" operator:
>
> CREATE OR REPLACE FUNCTION of_integer_ilike_text(prm_integer integer,
> prm_text text)
>   RETURNS boolean AS
> $BODY$BEGIN
> RETURN prm_integer::text ~~* prm_text ;
> END;$BODY$
>   LANGUAGE 'plpgsql' VOLATILE
>   COST 100;
> ALTER FUNCTION of_integer_ilike_text(integer, text) OWNER TO useris;
>
> CREATE OPERATOR ~~(
>   PROCEDURE = of_integer_ilike_text,
>   LEFTARG = int4,
>   RIGHTARG = text);
>
> I'm sure you'll manage to do this for "text = integer";
>
> Julius Tuskenis
>
>
>
> --
> Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
>
>

--
View this message in context:
http://www.nabble.com/Error%3A-Operator-does-not-exist%3A-%22char%22%3Dinteger-tp21067261p21079266.html
Sent from the PostgreSQL - general mailing list archive at Nabble.com.


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

Предыдущее
От: Jeremiah Jahn
Дата:
Сообщение: Re: 8.1.11 PREPARE problem?
Следующее
От: Lennin Caro
Дата:
Сообщение: alocate table in memory and multui listener