postgresqlでキャストを追加してバージョン互換性を保つ

PostgreSQL 8.3 では型変換のチェックが厳密になるよう仕様変更された。
解決方法としてユーザ定義のキャストを追加することで互換性問題に対応する。
-- 変換関数の定義 
CREATE FUNCTION int4text(int4) RETURNS text AS 'SELECT textin(int4out($1))' LANGUAGE sql IMMUTABLE STRICT; 
-- 暗黙的キャストの定義 
CREATE CAST (int4 AS text) WITH FUNCTION int4text(int4) AS IMPLICIT;