| Oracle Database ユーティリティ 10g リリース2(10.2) B19211-01 |
|
この章では、SQL*Loaderを起動するために使用するコマンドライン・パラメータについて説明します。この章の内容は、次のとおりです。
SQL*Loaderを起動すると、セッションの特性を確立するために特定のパラメータを指定できます。パラメータは任意の順序で入力できます。オプションとして、カンマで区切ることもできます。パラメータに値を指定するか、場合によっては、値を入力しないでデフォルトを指定できます。
次に例を示します。
SQLLDR CONTROL=sample.ctl, LOG=sample.log, BAD=baz.bad, DATA=etc.dat USERID=scott/tiger, ERRORS=999, LOAD=2000, DISCARD=toss.dsc, DISCARDMAX=5
任意のパラメータを指定しないでSQL*Loaderを起動すると、次のようなヘルプ画面が表示されます。使用可能なパラメータおよびそれらのデフォルト値が示されます。
> sqlldr
.
.
.
Usage: SQLLDR keyword=value [,keyword=value,...]
Valid Keywords:
userid -- ORACLE username/password
control -- control file name
log -- log file name
bad -- bad file name
data -- data file name
discard -- discard file name
discardmax -- number of discards to allow (Default all)
skip -- number of logical records to skip (Default 0)
load -- number of logical records to load (Default all)
errors -- number of errors to allow (Default 50)
rows -- number of rows in conventional path bind array or between direct
path data saves
(Default: Conventional path 64, Direct path all)
bindsize -- size of conventional path bind array in bytes (Default 256000)
silent -- suppress messages during run (header,feedback,errors,discards,
partitions)
direct -- use direct path (Default FALSE)
parfile -- parameter file: name of file that contains parameter specifications
parallel -- do parallel load (Default FALSE)
file -- file to allocate extents from
skip_unusable_indexes -- disallow/allow unusable indexes or index partitions
(Default FALSE)
skip_index_maintenance -- do not maintain indexes, mark affected indexes as
unusable (Default FALSE)
commit_discontinued -- commit loaded rows when load is discontinued (Default
FALSE)
readsize -- size of read buffer (Default 1048576)
external_table -- use external table for load; NOT_USED, GENERATE_ONLY, EXECUTE
(Default NOT_USED)
columnarrayrows -- number of rows for direct path column array (Default 5000)
streamsize -- size of direct path stream buffer in bytes (Default 256000)
multithreading -- use multithreading in direct path
resumable -- enable or disable resumable for current session (Default FALSE)
resumable_name -- text string to help identify resumable statement
resumable_timeout -- wait time (in seconds) for RESUMABLE (Default 7200)
date_cache -- size (in entries) of date conversion cache (Default 1000)
PLEASE NOTE: Command-line parameters may be specified either by position or by keywords.
An example of the former case is 'sqlldr scott/tiger foo'; an example of the latter
is 'sqlldr control=foo userid=scott/tiger'.One may specify parameters by position before
but not after parameters specified by keywords.For example, 'sqlldr scott/tiger control=foo
logfile=log' is allowed, but 'sqlldr scott/tiger control=foo log' is not, even though the
position of the parameter 'log' is correct.
コマンドラインの長さが、システムのコマンドラインの最大長を超える場合は、OPTIONS句を使用して、一部のコマンドライン・パラメータを制御ファイルに格納できます。
また、パラメータをパラメータ・ファイルとしてグループ化することもできます。このパラメータ・ファイルの名前は、SQL*Loaderの起動時に、PARFILEパラメータを使用してコマンドラインで指定できます。
パラメータ指定のこれらの代替方法は、同じパラメータを同じ値で繰り返し使用する場合に有効です。
コマンドラインで指定したパラメータ値は、パラメータ・ファイルまたはOPTIONS句で指定したパラメータ値を上書きします。
この項では、SQL*Loaderの各コマンドライン・パラメータについて説明します。ここで使用されているコマンドライン・パラメータのデフォルト値および最大値は、UNIXベースのシステムでの値です。これらの値はオペレーティング・システムによって異なります。詳細は、ご使用のオペレーティング・システム固有のOracleマニュアルを参照してください。
デフォルト: 拡張子が.badのデータ・ファイル名
SQL*Loaderによって作成される不良ファイルの名前を指定します。このファイルには、挿入中にエラーの原因となったレコード、または形式が不適切なレコードが格納されます。ファイル名を指定しない場合、デフォルトが使用されます。拒否されたレコードがない場合、不良ファイルが自動的に作成されることはありません。
コマンドラインで指定された不良ファイル名は、制御ファイルの最初のINFILE文に関連する不良ファイル名になります。つまり、制御ファイル中で指定した不良ファイル名よりも、コマンドラインで指定した不良ファイル名の方が優先されます。
デフォルト: このパラメータのデフォルト値を参照するには、「SQL*Loaderの起動」で説明したとおり、任意のパラメータを指定しないでSQL*Loaderを起動します。
バインド配列の最大サイズ(バイト単位)を指定します。BINDSIZEで指定されたバインド配列サイズは、デフォルト・サイズ(システムによって異なる)およびROWSに基づいて計算されたサイズよりも優先されます。
デフォルト: このパラメータのデフォルト値を参照するには、「SQL*Loaderの起動」で説明したとおり、任意のパラメータを指定しないでSQL*Loaderを起動します。
行数を指定してダイレクト・パス列配列に割り当てます。このパラメータの値は、SQL*Loaderでは計算されません。値を指定するか、またはデフォルトを使用する必要があります。
デフォルト: なし
データのロード方法を記述する制御ファイルの名前を指定します。ファイルの拡張子またはファイル・タイプを指定していない場合は、デフォルトで.ctlになります。省略すると、SQL*Loaderからファイル名の入力を要求されます。
SQL*Loader制御ファイル名に特殊文字が含まれている場合、オペレーティング・システムによっては、その文字をエスケープする必要があります。また、オペレーティング・システム上でファイル・システム・パスの中にバックスラッシュが使用されている場合は、複数のエスケープ文字を使用するか、または引用符でパスを囲む必要があります。詳細は、ご使用のオペレーティング・システム固有のOracleマニュアルを参照してください。
デフォルト: 拡張子が.datの制御ファイル名
ロードするデータが入っているデータ・ファイルの名前を指定します。ファイルの拡張子またはファイル・タイプを指定していない場合は、デフォルトで.datになります。
コマンドラインでデータ・ファイルを指定し、INFILEで制御ファイル内のデータ・ファイルを指定する場合は、コマンドラインで指定されたデータが最初に処理されます。制御ファイル内で指定された最初のデータ・ファイルは無視されます。制御ファイル内で指定された他のすべてのデータ・ファイルは処理されます。
ファイル処理オプションを指定する場合は、制御ファイルからのデータのロード時に、警告メッセージが発行されます。
デフォルト: 使用可能(1000要素)。日付キャッシュ機能を完全に使用禁止にするには、0(ゼロ)に設定します。
DATE_CACHEは、日付キャッシュ・サイズ(エントリ数)を指定します。次に例を示します。DATE_CACHE=5000を指定すると、作成された日付キャッシュごとに最大5000の一意の日付エントリを含めることができます。必要に応じて、すべての表に固有の日付キャッシュが作成されます。日付キャッシュは、表への格納のためにデータ型変換が必要な日付値またはタイムスタンプ値が1つ以上ロードされた場合にのみ作成されます。
日付キャッシュ機能は、ダイレクト・パス・ロードでのみ使用できます。デフォルトでは、この機能は使用可能です。デフォルトの日付キャッシュ・サイズは1000要素です。デフォルトのサイズを使用し、1000を超える一意の入力値をロードすると、日付キャッシュ機能は、この表に対して自動的に使用禁止となります。ただし、デフォルトを変更して0以外の日付キャッシュ・サイズを指定し、キャッシュ量がこのサイズを超えた場合、キャッシュは使用禁止になりません。
ログ・ファイルに含まれている日付キャッシュ統計(エントリ数、ヒット数、ミス数)を使用して、将来、同様のロードを行うときのためにキャッシュのサイズを調整できます。
デフォルト: false
従来型パスまたはダイレクト・パスのどちらの方法でデータをロードするかを指定します。true値はダイレクト・パス・ロードを指定します。false値は従来型パス・ロードを指定します。
デフォルト: 拡張子が.dscのデータ・ファイル名
SQL*Loaderで作成する廃棄ファイル(オプション)を指定します。このファイルには、表に挿入されず、拒否もされなかったレコードが保存されます。
コマンドラインで指定された廃棄ファイル名は、制御ファイルの最初のINFILE文に関連する廃棄ファイル名となります。つまり、制御ファイル中で指定する廃棄ファイル名よりも、コマンドラインで指定した廃棄ファイル名の方が優先されます。
デフォルト: ALL
廃棄レコードの最大数を指定します。廃棄レコード件数がここで指定した数に達すると、ロードは中止されます。最初の廃棄レコードで中止するには、1を指定します。
デフォルト: このパラメータのデフォルト値を参照するには、「SQL*Loaderの起動」で説明したとおり、任意のパラメータを指定しないでSQL*Loaderを起動します。
挿入エラーの許容最大数を指定します。発生したエラーの数がERRORSに指定された値を超えると、ロード処理が中止されます。エラーを許容しない場合は、ERRORS=0を設定します。エラーを無制限に許容する場合は、非常に大きい値を指定します。
単一の表をロードする場合、エラーの数がこの上限を超えると、ロード処理が中止されます。ただし、その前に挿入されたデータはコミットされます。
SQL*Loaderでは、すべての表の間でレコードの整合性を保つように処理されます。つまり、複数の表をロードする場合は、エラーの数がこの上限を超えても、すぐにはロード処理が中止されません。SQL*Loaderでは、複数の表のロードに対して許容最大数のエラーが検出されても、行のロードは続行され、すでに表にロードされた有効な行は確実にすべての表にロードされます。また、拒否された行はすべての表から削除されます。
どのような場合でも、SQL*Loaderでは、エラーになったレコードが不良ファイルに書き込まれます。
デフォルト: NOT_USED
外部表オプションを使用してデータをロードするかどうかをSQL*Loaderに指定します。EXTERNAL_TABLEには、次の3つの値を指定できます。
NOT_USED: デフォルト値。従来型パス・モードまたはダイレクト・パス・モードのいずれかを使用して、ロードを行います。
GENERATE_ONLY: 制御ファイルに記述されているとおり、SQL*Loaderログ・ファイル内の外部表を使用してロードを行うために必要なすべてのSQL文を書き込みます。これらのSQL文は、編集およびカスタマイズできます。実際のロードは、SQL*Loaderを使用せずに、SQL*Plusでこれらの文を実行して、後で行うことができます。
EXECUTE: 外部表を使用してロードを行うために必要なSQL文を実行します。ただし、SQL文からエラーが返されると、ロードは停止します。SQL文は、実行されたとおりログ・ファイルに書き込まれます。つまり、SQL文からエラーが返されると、ロードに必要な残りのSQL文はログ・ファイルには書き込まれません。SQL*Loader制御ファイルでEXTERNAL_TABLE=EXECUTEパラメータとSEQUENCEパラメータの両方を使用すると、SQL*Loaderは、データベースの順序を作成し、その順序に従って表をロードした後、その順序を削除します。この方法でロードを実行すると、従来型またはダイレクト・パスによる方法でロードした場合とは異なる結果になります。(順序の作成方法の詳細は、『Oracle Database SQLリファレンス』のCREATE SEQUENCEを参照してください。)
外部表オプションで、データベース内のディレクトリ・オブジェクトを使用して、すべてのデータ・ファイルがどこに格納されるか、および出力ファイルがどこで作成されるかを指定します。データ・ファイルを含むディレクトリ・オブジェクトには、READアクセスが、出力ファイルが作成されるディレクトリ・オブジェクトには、WRITEアクセスが必要です。データ・ファイルまたは出力ファイル格納用の既存のディレクトリ・オブジェクトがない場合は、SQL*LoaderでSQL文を生成して作成します。したがって、EXECUTEオプションを指定する場合は、CREATE ANY DIRECTORY権限が必要です。ロード処理の最後にディレクトリ・オブジェクトを削除する場合は、DELETE ANY DIRECTORY権限も必要です。
複数表のロードを行う場合は、SQL*Loaderで次の手順を実行します。
INSERT文を作成して、データの外部表記述からこの表をロードします。
INSERT文を実行します。
実行例については、事例5にEXTERNAL_TABLE=GENERATE_ONLYパラメータを追加して実行します。外部表に一意の名前を保証するため、SQL*Loaderではすべてのフィールド用に生成された名前を使用します。これは、フィールド名が制御ファイル内の異なる表の間で一意でないことがあるためです。
EXTERNAL_TABLE修飾子を使用する場合、次の制限が適用されます。
TO_DATEおよびTO_CHARを使用してユリウス日書式を変換します。
TO_CHAR(TO_DATE(:COL1, 'MM-DD-YYYY'), 'J')
デフォルト: なし
FILEは、エクステントを割り当てるデータベース・ファイルを指定します。このパラメータは、パラレル・ロードでのみ使用します。SQL*Loaderの異なるプロセスに対するFILEパラメータの値を変えることによって、データがシステムにロードされるときのディスクの競合を最小限に抑えることができます。
デフォルト: すべてのレコードがロードされます。
LOADは、指定した件数のレコードをスキップした後に、ロードする論理レコード件数の最大数を指定します。実際のレコード件数が指定された最大数より少ない場合、エラーは発生しません。
デフォルト: 拡張子が.logの制御ファイル名
LOGは、SQL*Loaderによって作成されるログ・ファイルを指定します。このファイルには、ロード処理に関するログ情報が保存されます。
デフォルト: 複数CPUシステムではtrueで、単一CPUシステムではfalse。
このパラメータは、ダイレクト・パス・ロードでのみ使用できます。
デフォルトでは、マルチスレッド・オプションは常にtrueに設定され、複数CPUシステム上で使用可能です。この場合の複数CPUシステムの定義は、2つ以上のCPUを持つ単一システムです。
単一CPUシステムでは、マルチスレッドはデフォルトでfalseに設定されています。2つの単一CPUシステム間でマルチスレッドを使用するには、マルチスレッドを使用可能にする必要があります。デフォルトでは、使用可能になっていません。マルチスレッドを使用可能にすることによって、サーバー・システムでのストリームのロードと並行して、クライアント・システムでストリームを作成できます。
マルチスレッド機能は、オペレーティング・システムに依存します。すべてのオペレーティング・システムがマルチスレッドをサポートしているわけではありません。
デフォルト: false
ダイレクト・ロード時に複数の同時セッションによって同じ表にデータをロードできるかどうかを指定します。
デフォルト: なし
コマンドラインで頻繁に使用するパラメータを記述したファイルを指定します。たとえば、コマンドラインで次のように指定します。:
sqlldr PARFILE=example.par
パラメータ・ファイルには次のような内容を記述できます。
USERID=scott/tiger CONTROL=example.ctl ERRORS=9999 LOG=example.log
デフォルト: このパラメータのデフォルト値を参照するには、「SQL*Loaderの起動」で説明したとおり、任意のパラメータを指定しないでSQL*Loaderを起動します。
READSIZEパラメータは、データ・ファイルからデータを読み込む場合にのみ使用されます。制御ファイルからレコードを読み込む場合は、常に64KBという値がREADSIZEとして使用されます。
デフォルトを使用しない場合は、READSIZEパラメータを使用して読取りバッファのサイズ(バイト単位)を指定できます。指定可能な最大サイズは、ダイレクト・パス・ロードおよび従来型パス・ロードの両方で20MBです。
従来型パス・ロードの方法では、バインド配列は、読取りバッファのサイズによって制限されます。そのため、読取りバッファを大きくすると、コミット操作を実行する前に、より多くのデータを読み取ることができるというメリットがあります。
次に例を示します。
sqlldr scott/tiger CONTROL=ulcas1.ctl READSIZE=1000000
この場合、コミットを実行する前に、SQL*Loaderによって、外部のデータ・ファイルから1,000,000バイト単位で読取りを実行できます。
READSIZEパラメータは、LOBに影響しません。LOB読取りバッファのサイズは、64KBに固定されています。
詳細は、「BINDSIZE(最大サイズ)」を参照してください。
デフォルト: false
RESUMABLEパラメータを使用して、再開可能な領域割当てを有効または無効にします。このパラメータはデフォルトでは無効なため、関連するRESUMABLE_NAMEパラメータおよびRESUMABLE_TIMEOUTパラメータを使用するには、RESUMABLE=trueを設定する必要があります。
デフォルト: 'User USERNAME (USERID), Session SESSIONID, Instance INSTANCEID'
再開可能な文を指定します。この値はユーザー定義のテキスト文字列で、USER_RESUMABLEまたはDBA_RESUMABLEビューに挿入して、一時停止されている特定の再開可能な文を識別できます。
RESUMABLEパラメータをtrueに設定して、再開可能な領域割当てを有効にしないかぎり、このパラメータは無視されます。
デフォルト: 7200秒(2時間)
エラー修正に必要な時間を指定します。タイムアウト時間内にエラーを修正できない場合は、文の実行が途中で終了します。
RESUMABLEパラメータをtrueに設定して、再開可能な領域割当てを有効にしないかぎり、このパラメータは無視されます。
デフォルト: このパラメータのデフォルト値を参照するには、「SQL*Loaderの起動」で説明したとおり、任意のパラメータを指定しないでSQL*Loaderを起動します。
ROWSに低い値を指定し、表圧縮を使用してデータを圧縮しようとすると、圧縮比が低下するため注意してください。データの圧縮には、高い値を指定するかデフォルト値を使用することをお薦めします。
従来型パス・ロードの場合のみ: ROWSでバインド配列の行数を指定します。詳細は、「バインド配列および従来型パス・ロード」を参照してください。
ダイレクト・パス・ロードの場合のみ: ROWSでデータ・ファイルからデータのセーブ前に読み込む行数を指定します。デフォルトでは、ロード終了時に、すべての行の読取りおよびデータ・セーブが1回実行されます。詳細は、「データ・セーブを使用したデータ損失の防止」を参照してください。1回のセーブで実際に表にロードされる行のおよその数は、ROWSの値から、最後のセーブ以降に廃棄および拒否されたレコードの数を引いた数です。
SQL*Loaderを開始すると、使用されているSQL*Loaderのバージョンに関する情報が画面に表示され、ログ・ファイルに書き込まれます。また、SQL*Loader実行中には次の例のようなフィードバック・メッセージも画面に表示されます。
Commit point reached - logical record count 20
SQL*Loaderで次のようなデータ・エラー・メッセージが表示される場合もあります。
Record 4: Rejected - Error on table EMP ORA-00001: unique constraint <name> violated
1つ以上の値を持つSILENTを指定して、これらのメッセージを抑止できます。
たとえば、画面に通常表示されるヘッダーとフィードバック・メッセージが表示されないようにするには、コマンドラインの引数で次のように指定します。
SILENT=(HEADER, FEEDBACK)
適切な値を使用して、次のいずれかの処理を抑止します(複数も可)。
HEADER: 画面に通常表示されるSQL*Loaderのヘッダー・メッセージを非表示にします。ただし、ヘッダー・メッセージはログ・ファイルに出力されます。
FEEDBACK: 画面に通常表示される「commit point reached」フィードバック・メッセージを非表示にします。
ERRORS: レコードにOracleエラーが発生したためそのレコードが不良ファイルに書き込まれた場合、データ・エラー・メッセージがログ・ファイルに出力されないようにします。ただし、拒否レコード件数は出力されます。
DISCARDS: レコードが廃棄ファイルに書き込まれた場合に、そのことを示すメッセージがログ・ファイルに出力されないようにします。
PARTITIONS: パーティション表のダイレクト・ロード中、ログ・ファイルに対するパーティションごとの統計情報の書込みを使用禁止にします。
ALL: すべての抑止値(HEADER、FEEDBACK、ERRORS、DISCARDSおよびPARTITIONSパラメータ)を実装します。
デフォルト: レコードは1件もスキップされません。
ファイルの先頭から何件の論理レコードをロード対象外とするかを指定します。
SKIPを指定すると、なんらかの理由で中断されたロードが継続されます。このパラメータは、従来型ロードおよび単一表のダイレクト・ロードで使用できます。複数の表のダイレクト・ロードに関しては、各表に対して同じ件数のレコードをロードする場合のみ使用できます。複数の表にそれぞれ異なる件数のレコードをダイレクト・ロードする場合は、使用できません。
WHEN句を使用し、セカンダリ・データもロード対象となる場合、そのセカンダリ・データは、プライマリ・データ・ファイルのレコードに対してWHEN句が正常に実行された場合にのみスキップされます。
デフォルト: false
ダイレクト・パス・ロードの索引メンテナンスを停止します。これは、従来型パス・ロードには適用できません。このオプションを指定すると、索引キーが付けられた索引パーティションには、索引キーのかわりに索引使用禁止が設定されます。これは、索引セグメントと、その索引が付けられているデータとの整合性がとれないためです。ロードの影響を受けない索引セグメントについては、ロード前の索引使用禁止状態が保持されます。
SKIP_INDEX_MAINTENANCEパラメータ:
PARALLELパラメータとともに指定)。
INTO TABLE句でPARTITIONパラメータを指定)。
デフォルト: 初期化パラメータ・ファイルで指定した、Oracleデータベースの構成パラメータSKIP_UNUSABLE_INDEXESの値。デフォルトのデータベースの設定は、TRUEです。
SKIP_UNUSABLE_INDEXESパラメータは、SQL*LoaderとOracleデータベースの両方によって提供されます。SQL*LoaderのSKIP_UNUSABLE_INDEXESパラメータは、SQL*Loaderコマンドラインで指定します。OracleデータベースのSKIP_UNUSABLE_INDEXESパラメータは、初期化パラメータ・ファイルの構成パラメータとして指定します。相互に与える影響を理解しておく必要があります。
SQL*LoaderコマンドラインでSKIP_UNUSABLE_INDEXESの値を指定すると、SQL*Loaderは、初期化パラメータ・ファイルに指定されているSKIP_UNUSABLE_INDEXES構成パラメータの値を上書きします。
SQL*LoaderコマンドラインでSKIP_UNUSABLE_INDEXESの値を指定しない場合、SQL*Loaderは、初期化パラメータ・ファイルに指定されているSKIP_UNUSABLE_INDEXES構成パラメータのデータベース設定を使用します。初期化パラメータ・ファイルでSKIP_UNUSABLE_INDEXESのデータベース設定を指定しない場合、デフォルトのデータベース設定はTRUEになります。
SKIP_UNUSABLE_INDEXESの値としてTRUEを指定すると、索引使用禁止状態の索引が検出された場合、使用禁止状態の索引はスキップされ、ロード処理は続行されます。これによってロード開始前の状態が使用禁止の索引を含む表をロードできます。ロード時に使用禁止状態でない索引は、SQL*Loaderによってメンテナンスされます。ロード時に使用禁止状態の索引はメンテナンスされず、ロード完了時も使用禁止状態のままです。
従来型パス・ロードおよびダイレクト・パス・ロードの両方に適用できます。
デフォルト: このパラメータのデフォルト値を参照するには、「SQL*Loaderの起動」で説明したとおり、任意のパラメータを指定しないでSQL*Loaderを起動します。
ダイレクト・パス・ストリームに対して、サイズをバイト単位で指定します。
デフォルト: なし
各ユーザーのOracleユーザー名/パスワードを指定します。省略すると、システムから入力を要求されます。スラッシュのみを入力すると、デフォルトとしてオペレーティング・システムのログイン名がUSERIDに適用されます。
また、ユーザーSYSとして接続する場合は、接続文字列にAS SYSDBAを指定する必要があります。次に例を示します。
sqlldr \'SYS/password AS SYSDBA\' sample.ctl
Oracle SQL*Loaderでは、SQL*Loaderの完了後、すぐに実行結果を確認できます。プラットフォームによっては、SQL*Loaderの実行結果はログ・ファイルに記録されるのみでなく、プロセス終了コードにも通知されます。このOracle SQL*Loaderの機能によって、コマンドラインやスクリプトからSQL*Loaderを起動したときにもその結果を確認できます。表7-1に、それぞれの結果に対応する終了コードを示します。
UNIXの場合、終了コードは次のようになります。
EX_SUCC 0 EX_FAIL 1 EX_WARN 2 EX_FTL 3
Windows NTの場合、終了コードは次のようになります。
EX_SUCC 0 EX_WARN 2 EX_FAIL 3 EX_FTL 4
SQL*Loaderが0(ゼロ)以外の終了コードを返した場合、システム・ログ・ファイルおよびSQL*Loaderログ・ファイルで、詳細な診断情報を確認してください。
UNIXでは、シェルの終了コードを調べてロード結果を確認できます。たとえば、SQL*Loaderコマンドをスクリプトで使用して、スクリプト内で終了コードを確認できます。
#!/bin/sh sqlldr scott/tiger control=ulcase1.ctl log=ulcase1.log retcode=`echo $?` case "$retcode" in 0) echo "SQL*Loader execution successful" ;; 1) echo "SQL*Loader execution exited with EX_FAIL, see logfile" ;; 2) echo "SQL*Loader execution exited with EX_WARN, see logfile" ;; 3) echo "SQL*Loader execution encountered a fatal error" ;; *) echo "unknown return code";; esac
|
![]() Copyright © 2005 Oracle Corporation. All Rights Reserved. |
|