• ベストアンサー

SQL*Loaderの事で

SQL*Loaderを使用してあるアイテムに固定文字を登録をしたいのですがxxxxxx.csvでなくxxxxxx.ctlで可能でしょうか? 例) -- xxxxx.ctl -- USERDATE SYSDATE USERNAME char -- xxxxx.csv -- "Process" USERNAMEに"Process"と固定的に登録は出来ませんか?

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

  • ベストアンサー
  • muyoshid
  • ベストアンサー率72% (230/318)
回答No.2

こんにちわ。 #1 のmuyoshid です。 トリガーを使用する他にも、以下の方法があったようです。  1) 表の列定義でDefault を指定しておく。  2) CONSTANT 関数を使用する。    → マニュアルによると、この方法はデータファイルを使用せずに      SQL*Loader の内部でデータを生成するようです。 CONSTANT 関数については、「Oracle8i ユーティリティガイド 第(2)部 第5章」 『SQL*Loader 制御ファイル・リファレンス」内の『データの生成』に記載が あります。 ユーザ登録が必要ですが、OTN Japan にPDF 形式のマニュアルが公開されて いますので、こちらからDownload されてはいかがでしょうか?

参考URL:
http://technet.oracle.co.jp/
kz2960
質問者

お礼

-- xxxxxx.ctl -- USERDATE SYSDATE USERNAME CONSTANT "Process" このコーディングでロードが出来ました。 何度も色々とお調べ下さってありがとうございました。

その他の回答 (1)

  • muyoshid
  • ベストアンサー率72% (230/318)
回答No.1

こんにちわ。 厳密には、制御ファイルで行う訳ではありませんが データを登録するテーブルにINSERT トリガーを定義して トリガーの中でusername, userdate を設定してはいかがでしょうか? ※ 確かダイレクト・パス・ロードの場合はトリガーは動かなかった   はずですので、ご注意下さい。

関連するQ&A