Oracleのシステム変数のspoolを使えば、SQLの実行結果をファイルに出力することが出来る。
でも、デフォルトではSQL文自体が出力されない。
SQLファイルにselect文をいっぱい書いてまとめて実行してスプール出力しようとすると、結果ばっかりずらずら出て、何のSQLを実行したんだか分からない(苦笑)
こんな時は、同じくシステム変数のechoをonにすると SQL文も出力されるようになる。
…今までCSVファイルを作成するようなことばかり考えていたので SQL文が出力されない方が都合がよかったけど、今回はちょうど逆だ。
一応、Excelで作ったCSV生成ツールのマクロにもecho offを追加しておいた。
あとついでに、システム変数をファイルに出力するstoreというコマンドがあることも知った。show allした結果をスプール出力するのと似たようなものだが、setを使っているので、これをlogin.sqlにしておけば環境を簡単に再現できるという事なんだろう。
でもどうせなら、セッションパラメータの内容も出力して欲しかったような気がするな~。