• ベストアンサー

シェルでSQLの結果を取得したい

シェルスクリプトでSQLPLUSから、SQL文を実行させる事はできたのですが、そのSQLがSELECT文の時、その抽出した結果をシェルスクリプト上 、知りたいとき、どのようにすればわかりません。 SELECT した結果は必ず0個または1個です。 どなたかご教授ください。 sqlplus -S user/pass @${SQL_FILE} << EOF >log.txt EOF SQL_FILEの中身 select seq from A_table where ID = 1

質問者が選んだベストアンサー

  • ベストアンサー
  • ham_kamo
  • ベストアンサー率55% (659/1197)
回答No.1

spoolを使えばいいと思います。 SQL_FILEの中身を、 set pagesize 0 spool log.txt select seq from A_table where ID = 1 spool off exit とすればいかがでしょうか。 seqの文字数が80を超えるときは、spoolの前に set linesize 120 のように、1行の文字列の最大値を増やす行を追加してください。 http://www.iceprobe.net/database/oracle/oraoraplus/plus_command.php

-Rena-
質問者

お礼

ありがとうございます。 おかげでうまくできました。

関連するQ&A