Oracle PL/SQLブロックでデータをCSV出力する

2018年7月16日Oracle, 開発

おはようございます。

今日も昨日に引き続き Oracle のツールです。

今回は指定したテーブルの内容をCSVに出力するバッチを作りました。

スポンサーリンク

CSV出力する

昨日と同じように、PL/SQLブロックを活用して
取得したデータをCSV形式に編集してスプールログに出力するといったものになります。

実行するSQL

OUTPUT_CSV.SQL

SQL呼び出しバッチ

OUTPUT.bat

起動してみる

今回は、データの出力のみなので、
以前作成したサンプルプログラム用のテーブルからデータをCSV出力してみました。

実行結果
実行結果

無事に出力されました。

ただ、スプールの仕様で、各行の後ろに空白データが大分ついてしまっているので、
エディタなんかで最終的に編集する必要があります。

追記

@ken_tokuda さんに Twitter で、
下記の設定で後ろの空白を消せるというのを教えていただきました。

 

まとめ

場合によっては便利なクライアント用ソフトが使えない場合もあるので、
こういったツールが活躍する場面もあるかと思います。

また、客先のシステムなんかで、リモートで調査が出来ない場合なんかに
データを取得してもらうのにバッチの形式は便利ですよね。

昨日、今日とサクッとした記事になりましたが、
何かのお役に立てれば。

ではでは。