#contents

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

*SQL*Plusで日付を表示するときに時刻まで出したいとき [#o27403d7]
この文を打つべし
 ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY/MM/DD HH24:MI:SS' ;

*SQL*Plusでヘッダ行を表示したくないとき [#x23d6c05]
この文を打つべし
 set header off

*SQL*Plusのコマンドバッファの中身が見たいとき [#x46d3440]
'L'と打って改行~
つか、edで良い訳だが

*SQL*Plusで起動時に実行したいコマンドの設定 [#i5bdba84]
SQLPATHという環境変数に入れたディレクトリにlogin.sqlというファイルを作っておくと、ログイン時に自動的に実行されるコマンドを設定できる。
 set pagesize 10000
 set linesize 120
 set long 1000
みたいの

*SQL*PLUSのSELECT文の結果をCSVにする [#taf7890c]
 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

-1行目の「linesize」:1行の長さを指定します。少し大きめの数字を取っておきましょう。
-2行目の「pagesize」:数レコードずつの間のセパレータを無効にする。
-3行目の「trimspool」:SPOOLファイルの行末のスペースを無効にする。
-4行目の「colsep」:セパレータの設定。ここでは「,」とする。

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

*同じコマンドを繰り返し実行 [#c32bfecd]
-'/' を入力

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS