TO_DATE function between PostgreSQL 8.2 and 9.4 - Mailing list pgsql-general

Hi,

 

I have had a Perl Website working for 7 years and have had no problems

until at the weekend I replace my database server with a newer one.

 

Database server (old): PostgreSQL 8.2 32bit

Database server (new): PostgreSQL 9.4 64bit

 

I run following sql in PostgreSQL 8.2, it return my expected result as ‘YYYY-MM-DD’ format.


--PostgreSQL 8.2

---------------

SELECT to_date(now() + '-7day', 'YYYY-MM-DD');


However after i migrated to PostgreSQL 9.4, i hit following error:


--PostgreSQL 9.4

---------------

SELECT to_date(now() + '-7day', 'YYYY-MM-DD');


--------------------------------------------------------------------------------

ERROR:  function to_date(timestamp with time zone, unknown) does not exist

LINE 1: SELECT to_date(now() + '-7day', 'YYYY-MM-DD')

                ^

********** Error **********


Of course, the most reliable way to deal with it is to 

rewrite the application or SQL to handle types strictly, 

but the application is large and rewrite is a terrible job. 


Is there any easy way to maintain compatibility?

 

Regards,

 

--

gzh




 

pgsql-general by date:

Previous
From: Dan Lynch
Date:
Subject: Postgres AST Deparser for Postgres
Next
From: Adrian Klaver
Date:
Subject: Re: Restricting user to see schema structure