1

SQL-LDR のドキュメントには、従来のパス ロードを実行する必要があると記載されています。

SQL 関数をデータ フィールドに適用する場合。ダイレクト・パス・ロード中はSQL関数を使用できません

次のようにフィールドを記述して、SQL-LDR でロードしている CSV ファイルに TimeStamp データを保存しています。

STARTTIME       "To_TimeStamp(:STARTTIME,'YYYY-MM-DD HH24:MI:SS.FF6')",
COMPLETIONTIME  "To_TimeStamp(:COMPLETIONTIME,'YYYY-MM-DD HH24:MI:SS.FF6')"

私の質問は: 関数なしでタイムスタンプ データをロードできますか、それともタイムスタンプ データのロード時にダイレクト パス ロードを実行できない場合ですか?

4

3 に答える 3

0

ちなみに、私たちのほとんどは、新しいバージョンのOracleを使用していることを前提として、より高度なバージョンの「外部テーブル」に「SQLローダー」の使用を中止しています。

于 2008-09-23T18:52:42.367 に答える
0

タイムスタンプデータの直接読み込みに成功した例を次に示します。
Loading Data (Part 4): sqlldr (direct, skip_index_maintainance)

于 2008-09-19T20:47:43.077 に答える
0

このOTNフォーラムのスレッドから:

必要なのは、環境変数 NLS_TIMESTAMP_FORMAT を設定して、SQL*Loader にタイムスタンプの形式を指定することだけです。

NLS_TIMESTAMP_FORMAT=YYYY-MM-DD HH24:MI:SS.FF を設定します。

..そして、制御ファイルから to_timestamp 関数への参照を完全に削除します。

于 2008-09-19T20:39:40.803 に答える