SQL*PlusでINSERT 文の置換変数をしたくないとき

INSERT文で入力したい文字列の中に '&' があると置換変数とみなされ、入力プロンプトが出てしまう。
これをやめて欲しい(='&'をただの文字として扱って欲しい)ときはあらかじめ以下の設定コマンドを打っておくと良い

set define off

SQL*Plusで日付を表示するときに時刻まで出したいとき

この文を打つべし

ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY/MM/DD HH24:MI:SS' ;

SQL*Plusでヘッダ行を表示したくないとき

この文を打つべし

set header off

SQL*Plusのコマンドバッファの中身が見たいとき

'L'と打って改行
つか、edで良い訳だが

SQL*Plusで起動時に実行したいコマンドの設定

SQLPATHという環境変数に入れたディレクトリにlogin.sqlというファイルを作っておくと、ログイン時に自動的に実行されるコマンドを設定できる。

set pagesize 10000
set linesize 120
set long 1000

みたいの

SQL*PLUSのSELECT文の結果をCSVにする

SQL> set linesize 1000
SQL> set pagesize 0
SQL> set trimspool on
SQL> set colsep ','
SQL> spool /tmp/hogehoge
SQL> select * from emp;
      ・
      ・
SQL> spool off

スペースが入り込んだりする部分はありますが、とりあえずこれでCSV形式でデータをファイルにすることができます。

同じコマンドを繰り返し実行


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2011-12-29 (木) 20:25:06