9.141 LOAD_FILE_DATA
Þ 注:組み込み関数の規則
要求されたファイルに対するOAMを呼び出して、指定のフラット・ファイルからすべてのデータをロードします。
この組み込み関数は、OAMと同じマシンで実行することを想定しています。BIFとOAMはどちらも入力ファイルへのアクセスを必要とします。このBIF
をローカル・ファンクションから実行し、ファイルをスーパーサーバーにリダイレクトする場合、各ユーザーの責任により、クライアントとサーバーの両方で入力ファイル名が有効であることを確認してください。
当然ながら、ファイルへのデータのロード中は、SELECTループ内から同じファイルに対してIOが使用される、すなわちLOAD_FILE_DATAが呼び出されることは想定されていません。ファイルのロード完了時には、OAMは完全に閉じ、既存のすべてのトランザクションが終了します。
各製品の対応
LANSA/AD |
未対応 |
このファンクションは、IBM iではサポートされません。 IBM iで実行した場合、致命的なエラーが発生し、「この組み込み関数は現行バージョンではサポートされていません」というメッセージが表示されます。 |
Visual LANSA for Windows |
使用可 |
|
Visual LANSA for Linux |
使用可 |
引数
番号 |
タイプ |
必須/任意 |
記述 |
最小長 |
最大長 |
最小小数桁数 |
最大小数桁数 |
---|---|---|---|---|---|---|---|
1 |
A |
必須 |
LANSA ファイル名 |
1 |
10 |
||
2 |
A |
任意 |
ルール/トリガーを使用する Y を指定するとすべてのルール、トリガー、およびバッチ制御ロジックが処理されます。Y以外の値では、ルール、トリガー、バッチ制御ロジックが処理されずにデータがロードされます。 デフォルト = N |
1 |
1 |
||
3 |
A |
任意 |
入力ファイル・パス/名前 デフォルト = ....\X_ppp\source\[ファイル名].dat |
1 |
256 |
||
4 |
A |
任意 |
重複キーを無視する Y - レコード追加時に重複キーが見つかった場合、レコードは追加されずにメッセージがジョブ・メッセージ待ち行列に追加されます。 N - 重複キーがある場合、ロードはエラーで終了します。 デフォルト = Y |
||||
5 |
A |
任意 |
OAM の有無のチェック(Y/N) デフォルト = N |
1 |
1 |
||
6 |
A |
任意 |
ロードが正常終了した後に、.datファイルとBLOB/CLOBファイルを削除します(BLOBデータ、CLOBデータの欠落についてはエラーも警告も発生しません)。 |
1 |
1 |
||
7 |
A |
任意 |
ファイルにBLOBまたはCLOBフィールドがあり、.datファイルがそのフィールドに対するファイル名を示している場合、LOAD_FILE_DATAは自動でそのファイルを検索し、ファイルが見つかればデータベースにデータをロードします。このフラグは、予期したファイルが見つからない場合の処理を制御します。 |
1 |
1 |
||
8 |
A |
任意 |
CTD 保管レベル デフォルト = A |
1 |
1 |
戻り値
番号 |
タイプ |
必須/任意 |
記述 |
最小長 |
最大長 |
最小小数桁数 |
最大小数桁数 |
---|---|---|---|---|---|---|---|
1 |
A |
必須 |
戻りコード OK = ファイルが正常にロードされた VE = ファイルのロードで妥当性検査エラーが発生した ER = ファイルのロードに失敗した(考えられる原因 - フラット・ファイルが見つからない、トリガーが正しく実行されなかった) NT = テーブルがない NO = OAMがない。ファイルが存在しないか、またはコンパイルされていません。 入力オプション5がYに設定されている場合だけ、NOが戻されます。 |
2 |
2 |
V10.0 より前のバージョンで生成されたOAMに関する問題
V10.0よりも前のバージョンで生成されたOAMでUNLOAD_FILE_DATAが使用されていた場合、V10.0のLOAD_FILE_DATA を動作するにはCTXファイルがなければなりません(注:データがV10.0のOAMで作られている場合、以下のステップでCTXファイルをマニュアルで作成する必要はありません)。
以下の手順に従ってCTXファイルを作成します(以下はV9.1からV10.0への例が使用されています)。
1. データ・ファイルが作成されたLANSA V9.1に戻ります
2. 関連するV9.1の.CTD(共通テーブル定義)ファイルのコピーを作成して、拡張子を.CTX(前共通テーブル定義)にします。
3. V9.1
の.CTXファイルを次の場所にコピーします。...\x_win95\X_lansa\X_&
lt;区画>\Source\
例:...\x_win95\X_lansa\X_<partition>\Source\<filename>.CTX
4. LOAD_FILE_DATA 組み込み関数を使用してアンロードされたデータをロードします。
5. LOAD_FILE_DATA の使用後、CTXファイルが不要になった場合、CTXファイルを削除します。