diff options
author | kennyj <kennyj@gmail.com> | 2012-06-21 01:35:26 +0900 |
---|---|---|
committer | kennyj <kennyj@gmail.com> | 2012-06-21 01:35:26 +0900 |
commit | 19911959d9a8fa5341f61b028cb489e6ecc2c339 (patch) | |
tree | 539f3aedfa8167aced878adba05845e46c796f86 /activerecord/lib/active_record/tasks/mysql_database_tasks.rb | |
parent | 4f700edcc094406155785c693363801d0277792c (diff) | |
download | rails-19911959d9a8fa5341f61b028cb489e6ecc2c339.tar.gz rails-19911959d9a8fa5341f61b028cb489e6ecc2c339.tar.bz2 rails-19911959d9a8fa5341f61b028cb489e6ecc2c339.zip |
Refactor db:structure:load task.
Diffstat (limited to 'activerecord/lib/active_record/tasks/mysql_database_tasks.rb')
-rw-r--r-- | activerecord/lib/active_record/tasks/mysql_database_tasks.rb | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/tasks/mysql_database_tasks.rb b/activerecord/lib/active_record/tasks/mysql_database_tasks.rb index 052ab60e81..b39cd2282f 100644 --- a/activerecord/lib/active_record/tasks/mysql_database_tasks.rb +++ b/activerecord/lib/active_record/tasks/mysql_database_tasks.rb @@ -49,6 +49,14 @@ module ActiveRecord File.open(filename, "w:utf-8") { |f| f << ActiveRecord::Base.connection.structure_dump } end + def structure_load(filename) + establish_connection(configuration) + connection.execute('SET foreign_key_checks = 0') + IO.read(filename).split("\n\n").each do |table| + connection.execute(table) + end + end + private def configuration |