Search Postgresql Archives

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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux