aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters/sqlite3/database_statements.rb
diff options
context:
space:
mode:
authorRyuta Kamizono <kamipo@gmail.com>2019-03-17 12:21:05 +0900
committerRyuta Kamizono <kamipo@gmail.com>2019-03-17 13:12:25 +0900
commitd8d6bd5e63a9a4a6c06a4dde3c7137ee2be105fd (patch)
tree5bd849a48a60d58c69126c9905c976e162477d0d /activerecord/lib/active_record/connection_adapters/sqlite3/database_statements.rb
parentc852eda542640631d4906eec5d108faed944b6e6 (diff)
downloadrails-d8d6bd5e63a9a4a6c06a4dde3c7137ee2be105fd.tar.gz
rails-d8d6bd5e63a9a4a6c06a4dde3c7137ee2be105fd.tar.bz2
rails-d8d6bd5e63a9a4a6c06a4dde3c7137ee2be105fd.zip
SQLite3: Make fixture loading to bulk statements
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/sqlite3/database_statements.rb')
-rw-r--r--activerecord/lib/active_record/connection_adapters/sqlite3/database_statements.rb7
1 files changed, 7 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/sqlite3/database_statements.rb b/activerecord/lib/active_record/connection_adapters/sqlite3/database_statements.rb
index 64ef53e2e4..84dcae49b9 100644
--- a/activerecord/lib/active_record/connection_adapters/sqlite3/database_statements.rb
+++ b/activerecord/lib/active_record/connection_adapters/sqlite3/database_statements.rb
@@ -19,6 +19,13 @@ module ActiveRecord
end
end
+ def build_fixture_statements(fixture_set)
+ fixture_set.flat_map do |table_name, fixtures|
+ next if fixtures.empty?
+ fixtures.map { |fixture| build_fixture_sql([fixture], table_name) }
+ end.compact
+ end
+
def build_truncate_statements(*table_names)
truncate_tables = table_names.map do |table_name|
"DELETE FROM #{quote_table_name(table_name)}"