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