Method: ActiveRecord::ConnectionAdapters::SQLite3Adapter#rename_table

Defined in:
activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb

#rename_table(table_name, new_name, **options) ⇒ Object

Renames a table.

Example:

rename_table('octopuses', 'octopi')


383
384
385
386
387
388
389
# File 'activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb', line 383

def rename_table(table_name, new_name, **options)
  validate_table_length!(new_name) unless options[:_uses_legacy_table_name]
  schema_cache.clear_data_source_cache!(table_name.to_s)
  schema_cache.clear_data_source_cache!(new_name.to_s)
  exec_query "ALTER TABLE #{quote_table_name(table_name)} RENAME TO #{quote_table_name(new_name)}"
  rename_table_indexes(table_name, new_name, **options)
end