Non è che mi intenda granché di postgresql, non ci lavoro da secoli.

Attenta comunque a non confondere i timestamp del db (come quello restituito da now()), che sono valori con precisione al microsecondo, con i timestamp UNIX, che sono degli interi e rappresentano i secondi trascorsi dal 1/1/1970.

I valori di tipo date e affini hanno una loro rappresentazione interna che viene convertita in formato visualizzabile quando i dati vanno in output, così come ovviamente devono essere accettati alcuni formati in input. Col formato che hai indicato tu '2007-04-02' dovresti essere sempre tranquilla.

Comunque la documentazione al riguardo la trovi qui e qui