Ruby on Railsのmigration機能は、DBを育てていくための多種多様な機能を提供してくれています。サービスを運用していく中で、DBは「カチッと安定している」ことが望ましいですが、それは夢物語であり、日々サービスに機能追加や修正を施していく度に、DBも当然影響を受けます。それは、テーブルの追加や列の追加だけでなく、時には「テーブル名の変更」も出てくるでしょう。 もし「itemsテーブルの名前をproductsに変えておいて」と依頼されたら、あなたならどうしますか? rename_tableでは済まされない状況 もし手元に開発環境があって、自分しかアクセスしないdevelopmentやtestのDBであれば、以下のようにしてしまえば良さそうです。