change CURRENT_TIMESTAMP to current_timestamp
Rafael Kitover [Sat, 1 May 2010 21:20:50 +0000 (17:20 -0400)]
13 files changed:
lib/DBIx/Class/Schema/Loader/DBI/DB2.pm
lib/DBIx/Class/Schema/Loader/DBI/InterBase.pm
lib/DBIx/Class/Schema/Loader/DBI/MSSQL.pm
lib/DBIx/Class/Schema/Loader/DBI/Pg.pm
lib/DBIx/Class/Schema/Loader/DBI/SQLAnywhere.pm
lib/DBIx/Class/Schema/Loader/DBI/mysql.pm
t/11mysql_common.t
t/12pg_common.t
t/13db2_common.t
t/16mssql_common.t
t/17sybase_asa_common.t
t/18firebird_common.t
t/lib/dbixcsl_common_tests.pm

index 886a45b..ed69925 100644 (file)
@@ -131,7 +131,7 @@ sub _columns_info_for {
         }
 
         if (eval { lc ${ $info->{default_value} } }||'' eq 'current timestamp') {
-            ${ $info->{default_value} } = 'CURRENT_TIMESTAMP';
+            ${ $info->{default_value} } = 'current_timestamp';
             delete $info->{size};
         }
     }
index 6cfb7ec..3dd27ca 100644 (file)
@@ -293,6 +293,9 @@ EOF
                 $info->{default_value} = $def =~ /^\d/ ? $def : \$def;
             }
         }
+
+        ${ $info->{default_value} } = 'current_timestamp'
+            if ref $info->{default_value} && ${ $info->{default_value} } eq 'CURRENT_TIMESTAMP';
     }
 
     return $result;
index 7d65c44..d2847c3 100644 (file)
@@ -281,7 +281,7 @@ wHERE lower(table_name) = @{[ $dbh->quote(lc $table) ]} AND lower(column_name) =
                     $default =~ /^\d/ ? $default : \$default;
 
             if (eval { lc ${ $info->{default_value} } }||'' eq 'getdate()') {
-                ${ $info->{default_value} } = 'CURRENT_TIMESTAMP';
+                ${ $info->{default_value} } = 'current_timestamp';
             }
         }
     }
index d8a8b9e..e8fb9de 100644 (file)
@@ -205,10 +205,10 @@ EOF
             delete $result->{$col}{default_value};
         }
 
-# alias now() to CURRENT_TIMESTAMP for deploying to other DBs
+# alias now() to current_timestamp for deploying to other DBs
         if (eval { lc ${ $result->{$col}{default_value} }||'' eq 'now()' }) {
             # do not use a ref to a constant, that breaks Data::Dump output
-            ${$result->{$col}{default_value}} = 'CURRENT_TIMESTAMP';
+            ${$result->{$col}{default_value}} = 'current_timestamp';
         }
     }
 
index 8cf364d..cc54ea7 100644 (file)
@@ -107,7 +107,7 @@ EOF
         delete $info->{default_value} if ref($info->{default_value}) eq 'SCALAR' && ${ $info->{default_value} } eq 'NULL';
 
         if (eval { lc ${ $info->{default_value} } }||'' eq 'current timestamp') {
-            ${ $info->{default_value} } = 'CURRENT_TIMESTAMP';
+            ${ $info->{default_value} } = 'current_timestamp';
         }
     }
 
index 2e22729..e6e10ee 100644 (file)
@@ -196,7 +196,8 @@ sub _extra_column_info {
     if (   lc($dbi_info->{COLUMN_DEF})      eq 'current_timestamp'
         && lc($dbi_info->{mysql_type_name}) eq 'timestamp') {
 
-        $extra_info{default_value} = \'CURRENT_TIMESTAMP';
+        my $current_timestamp = 'current_timestamp';
+        $extra_info{default_value} = \$current_timestamp;
     }
 
     return \%extra_info;
index 48208b9..84339ce 100644 (file)
@@ -90,8 +90,8 @@ my $tester = dbixcsl_common_tests->new(
         # Date and Time Types
         'date'        => { data_type => 'date' },
         'datetime'    => { data_type => 'datetime' },
-        'timestamp DEFAULT current_timestamp'
-                      => { data_type => 'timestamp', default_value => \"CURRENT_TIMESTAMP" },
+        'timestamp default current_timestamp'
+                      => { data_type => 'timestamp', default_value => \'current_timestamp' },
         'time'        => { data_type => 'time' },
         'year'        => { data_type => 'year' },
         'year(4)'     => { data_type => 'year' },
index 3b626b1..5693c89 100644 (file)
@@ -57,7 +57,7 @@ my $tester = dbixcsl_common_tests->new(
        'time(2) with time zone'         => { size => 2, data_type => 'time with time zone' },
        timestamp                        => { data_type => 'timestamp without time zone' },
         'timestamp default current_timestamp'
-                                         => { data_type => 'timestamp without time zone', default_value => \'CURRENT_TIMESTAMP' },
+                                         => { data_type => 'timestamp without time zone', default_value => \'current_timestamp' },
        'timestamp(2)'                   => { size => 2, data_type => 'timestamp without time zone' },
        'timestamp without time zone'    => { data_type => 'timestamp without time zone' },
        'timestamp(2) without time zone' => { size => 2, data_type => 'timestamp without time zone' },
index 6a7f17c..c21fec8 100644 (file)
@@ -14,7 +14,7 @@ my $tester = dbixcsl_common_tests->new(
     password       => $password,
     null           => '',
     data_types => {
-        'timestamp DEFAULT CURRENT TIMESTAMP' => { data_type => 'timestamp', default_value => \'CURRENT_TIMESTAMP' }
+        'timestamp default current timestamp' => { data_type => 'timestamp', default_value => \'current_timestamp' }
     },
 );
 
index 31c373a..305fe5b 100644 (file)
@@ -67,9 +67,9 @@ my $tester = dbixcsl_common_tests->new(
         # datetime types
         date     => { data_type => 'date' },
         datetime => { data_type => 'datetime' },
-        # test rewriting getdate() to CURRENT_TIMESTAMP
-        'datetime DEFAULT getdate()'
-                 => { data_type => 'datetime', default_value => \'CURRENT_TIMESTAMP' },
+        # test rewriting getdate() to current_timestamp
+        'datetime default getdate()'
+                 => { data_type => 'datetime', default_value => \'current_timestamp' },
         smalldatetime  => { data_type => 'smalldatetime' },
         time     => { data_type => 'time' },
         'time(0)'=> { data_type => 'time', size => 0 },
index 1d3495d..f85bf34 100644 (file)
@@ -91,9 +91,9 @@ my $tester = dbixcsl_common_tests->new(
         'smalldatetime'
                       => { data_type => 'smalldatetime' },
         'timestamp'   => { data_type => 'timestamp' },
-        # rewrite 'current timestamp' as 'CURRENT_TIMESTAMP'
-        'timestamp DEFAULT current timestamp'
-                      => { data_type => 'timestamp', default_value => \"CURRENT_TIMESTAMP" },
+        # rewrite 'current timestamp' as 'current_timestamp'
+        'timestamp default current timestamp'
+                      => { data_type => 'timestamp', default_value => \'current_timestamp' },
         'time'        => { data_type => 'time' },
 
         # String Types
index 94342cf..d73f4e9 100644 (file)
@@ -94,8 +94,8 @@ my $tester = dbixcsl_common_tests->new(
 
         # Date and Time Types
         'date'        => { data_type => 'date' },
-        'timestamp DEFAULT CURRENT_TIMESTAMP'
-                      => { data_type => 'timestamp', default_value => \"CURRENT_TIMESTAMP" },
+        'timestamp default current_timestamp'
+                      => { data_type => 'timestamp', default_value => \'current_timestamp' },
         'time'        => { data_type => 'time' },
 
         # String Types
index ab6d8cb..7b83ea9 100644 (file)
@@ -45,8 +45,8 @@ sub new {
     $self->{date_datatype} ||= 'DATE';
 
     # Not all DBS do SQL-standard CURRENT_TIMESTAMP
-    $self->{default_function} ||= "CURRENT_TIMESTAMP";
-    $self->{default_function_def} ||= "TIMESTAMP DEFAULT $self->{default_function}";
+    $self->{default_function} ||= "current_timestamp";
+    $self->{default_function_def} ||= "timestamp default $self->{default_function}";
 
     $self = bless $self, $class;