CoreData の実行SQLを出力させる
CoreData は早い話 O/Rマッパー。SQLを自動生成してくれるのは良いんだけど、どんなSQLが発行されてるか知りたいときもある。デバッグの仕方は、こちらさんが参考になる :-)
"Analyzing Fetch Behavior with SQLite" に、コマンドライン引数に次を指定すると CoreDataから SQLite へ発行される SQL をデバッグ出力できるとの記述があった。
CoreData で発行されている SQL をデバッグ出力する
- com.apple.CoreData.SQLDebug 1
ただ Xcode4 になって、設定箇所がちょいと変わった。こちらさんが参考になる。
手順はこんな感じ。アプリを実行してコンソールにSQLが出力されてれば OK :-)
- Product -> Edit Scheme を実行する。
- 左ペインで .app を選択する。
- メインパネルで Arguments タブを選択する。
- Argument Passed On Launch に「-com.apple.CoreData.SQLDebug 1」を追加する。
- OK ボタンを押す。
確認環境
- Mac OSX 10.6.8
- Xcode 4.0.2