32
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

rake db:migrate した時に発行される SQL を調べる方法

Posted at

概要

migration した際の SQL が知りたくなったので

rake db:migrate

した際に発行される SQL を標準出力に出力させます。

やり方

Is it possible to output the SQL change scripts that 'rake db:migrate' produces?
調べたら stack overflow で解決してくれてる人がいた。

log を出力させる task を作って

task log: :environment do
  ActiveRecord::Base.logger = Logger.new(STDOUT)
end

追加した task を付与して実行!

rake log db:migrate

これで DEBUG ログも出力されて、発行される SQL が見れます。簡単。

ちなみに

ActiveRecord::Base.logger = Logger.new(STDOUT)

は、debug ログなどが出力されない本番環境などで、「あれ?このコードどんな SQL が発行されるんだ?」って思ったときに、さくっとコンソールで調べられるので知っておくとちょっと便利です。

32
22
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
32
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?