real time support
authorMax Lapshin <max@maxidoors.ru>
Wed, 18 Feb 2009 16:10:42 +0000 (19:10 +0300)
committerMax Lapshin <max@maxidoors.ru>
Wed, 18 Feb 2009 16:10:42 +0000 (19:10 +0300)
mysql2psql

index ea14ed5..9318147 100755 (executable)
@@ -452,10 +452,14 @@ class PostgresDbWriter < PostgresWriter
           row[index] = '\N'
           next
         end
-        if row[index].is_a?(Mysql::Time)
+        if column[:type] == "time"
           row[index] = "%02d:%02d:%02d" % [row[index].hour, row[index].minute, row[index].second]
           next
         end
+        if row[index].is_a?(Mysql::Time)
+          row[index] = row[index].to_s.gsub('0000-00-00 00:00', '1970-01-01 00:00')
+          next
+        end
         
         if column_type(column) == "boolean"
           row[index] = row[index] == 1 ? 't' : row[index] == 0 ? 'f' : row[index]
@@ -536,9 +540,9 @@ class Converter
   end
 end
 
-reader = MysqlReader.new('localhost', 'root', nil, 'test')
+reader = MysqlReader.new('localhost', 'root', nil, 'lookatme_development')
 #writer = PostgresFileWriter.new($ARGV[2] || "output.sql")
-writer = PostgresDbWriter.new('localhost', 'postgres', '', 'test')
-converter = Converter.new(reader, writer, :only_tables => %w(time_test))
+writer = PostgresDbWriter.new('localhost', 'lookatme', '123', 'lookatme_development')
+converter = Converter.new(reader, writer, :only_tables => "abuses")
 converter.convert