X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FSQL%2FTranslator%2FProducer%2FPostgreSQL.pm;h=eb12613347ce9c1abec486e0c277a738fc97301a;hb=b08b5416f45bfbe381637ee3091202524c78ecab;hp=9ea1d69c0321505c7c646c7fa5431a5b787071e3;hpb=08d91aada45b94a16f3660b5cc10384df5616ff9;p=dbsrgits%2FSQL-Translator.git diff --git a/lib/SQL/Translator/Producer/PostgreSQL.pm b/lib/SQL/Translator/Producer/PostgreSQL.pm index 9ea1d69..eb12613 100644 --- a/lib/SQL/Translator/Producer/PostgreSQL.pm +++ b/lib/SQL/Translator/Producer/PostgreSQL.pm @@ -1,7 +1,7 @@ package SQL::Translator::Producer::PostgreSQL; # ------------------------------------------------------------------- -# $Id: PostgreSQL.pm,v 1.25 2006-08-04 21:38:20 schiffbruechige Exp $ +# $Id: PostgreSQL.pm,v 1.27 2006-11-10 21:21:51 mwz444 Exp $ # ------------------------------------------------------------------- # Copyright (C) 2002-4 SQLFairy Authors # @@ -39,7 +39,7 @@ producer. use strict; use warnings; use vars qw[ $DEBUG $WARN $VERSION ]; -$VERSION = sprintf "%d.%02d", q$Revision: 1.25 $ =~ /(\d+)\.(\d+)/; +$VERSION = sprintf "%d.%02d", q$Revision: 1.27 $ =~ /(\d+)\.(\d+)/; $DEBUG = 1 unless defined $DEBUG; use SQL::Translator::Schema::Constants; @@ -207,7 +207,7 @@ sub produce { $output = join("\n\n", @table_defs); if ( @fks ) { $output .= "--\n-- Foreign Key Definitions\n--\n\n" unless $no_comments; - $output .= join( "\n\n", @fks ); + $output .= join( "\n\n", @fks ) . "\n"; } if ( $WARN ) { @@ -430,13 +430,17 @@ sub create_table # # Default value -- disallow for timestamps # - my $default = $data_type =~ /(timestamp|date)/i - ? undef : $field->default_value; +# my $default = $data_type =~ /(timestamp|date)/i +# ? undef : $field->default_value; + my $default = $field->default_value; if ( defined $default ) { + my $qd = "'"; + $qd = '' if ($default eq 'now()' || + $default eq 'CURRENT_TIMESTAMP'); $field_def .= sprintf( ' DEFAULT %s', ( $field->is_auto_increment && $seq_name ) ? qq[nextval('"$seq_name"'::text)] : - ( $default =~ m/null/i ) ? 'NULL' : "'$default'" + ( $default =~ m/null/i ) ? 'NULL' : "$qd$default$qd" ); }