Sha256: b40b31415d29158d0aafa346fe3ae397e8bf3a138b025701801cbb3c1a65c7c7

Contents?: true

Size: 1.2 KB

Versions: 4

Compression:

Stored size: 1.2 KB

Contents

class CreateEchiTrunks < ActiveRecord::Migration
  def self.up
    #We create the table from the one defined in the application.yml file
    create_table "echi_trunks", :force => true do |t|
      @@echi_schema["echi_trunks"].each do | field |
        case field["type"]
        when 'int'
          if ActiveRecord::Base.connection.adapter_name == 'Oracle'
            case field["length"]
            when 4
              oracle_precision = 10
            when 2
              oracle_precision = 5
            when 1
              oracle_precision = 3
            end
            t.column field["name"], :integer, :limit => oracle_precision, :precision => oracle_precision, :scale => 0
          else
            t.column field["name"], :integer, :limit => field["length"], :precision => field["length"], :scale => 0
          end
        when 'str'
          t.column field["name"], :string, :limit => field["length"]
        when 'datetime'
          t.column field["name"], :datetime
        when 'bool'
          t.column field["name"], :string, :limit => 1
        when 'boolint'
          t.column field["name"], :string, :limit => 1
        end
      end
    end
  end

  def self.down
    drop_table "echi_trunks"
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
echi-converter-0.4.4 db/migrate/011_create_echi_trunks.rb
echi-converter-0.4.0 db/migrate/011_create_echi_trunks.rb
echi-converter-0.4.1 db/migrate/011_create_echi_trunks.rb
echi-converter-0.4.2 db/migrate/011_create_echi_trunks.rb