Class: ActiveRecord::ConnectionAdapters::AbstractMysqlAdapter

Inherits:
AbstractAdapter
  • Object
show all
Defined in:
lib/activerecord-mysql-structure/active_record/v3/connection_adapters/abstract_mysql_adapter.rb

Instance Method Summary collapse

Instance Method Details

#dump_schema_informationObject

:nodoc:



22
23
24
# File 'lib/activerecord-mysql-structure/active_record/v3/connection_adapters/abstract_mysql_adapter.rb', line 22

def dump_schema_information #:nodoc:
  "#{super}\n"
end

#structure_dumpObject

Override this to add DROP TABLE IF EXISTS statements to each CREATE TABLE



8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/activerecord-mysql-structure/active_record/v3/connection_adapters/abstract_mysql_adapter.rb', line 8

def structure_dump #:nodoc:
  if supports_views?
    sql = "SHOW FULL TABLES WHERE Table_type = 'BASE TABLE'"
  else
    sql = "SHOW TABLES"
  end

  select_all(sql).map { |table|
    table.delete('Table_type')
    sql = "SHOW CREATE TABLE #{quote_table_name(table.to_a.first.last)}"
    "DROP TABLE IF EXISTS #{quote_table_name(table.to_a.first.last)};\n\n" + exec_query(sql).first['Create Table'] + ";\n\n" # CHANGE 1 of 2 FROM RAILS
  }.join.gsub(/\s+AUTO_INCREMENT=\d+\s+/, ' ') # CHANGE 2 of 2 FROM RAILS
end