my $dbh= DBI->connect( q!dbi:Pg:dbname=asterisk;host=www.ibm.fr!, 'asterisk','secret') or die $DBI::errstr; my $cursor = $dbh->prepare( "SELECT * FROM asterisk_cdr where id=48000;"); $cursor->execute; my @row; if ( @row = $cursor->fetchrow ) { my $Date = DateTime::Format::Pg->parse_timestamp_with_time_zone($row[1]) ; my $Date3= $Date->clone()->set_time_zone('floating')->set_time_zone( 'Europe/Paris' ); print "$Date==$Date3",$Date3->time_zone_long_name(), ' ',$Date3->hms,$Date->hms,"\n"; } #### 2017-06-10T21:55:00==2017-06-10T21:55:00Europe/Paris 21:55:0021:55:00