3.6.16 [RRNの欄の作成]
対象のファイルにRRNの機能が必要であるかどうかを指定します。
この意味は、ファイルがPC外部ファイルであるかどうかによって多少異なります。
· YES は、相互更新検査の実行とLANSA RRNの機能の使用を可能にするために、テーブルがX_RRNO列とX_UPID列(@@RRNOフィールドと@@UPIDフィールド)を必要とすることを指定します。自動的にインクリメントする列がX_RRNO用に使用されます。
· NO は、テーブルが X_RRNO列とX_UPID列を必要としないことを意味します。このオプションは使用されていませんが、下位互換性を保つために残されています。
警告
· X_RRNO 列とX_UPID列を削除すると、ファイル上で実行できる機能は制限されます。以下は制限の一部のリストです。
· RRN の機能を使用するすべてのコマンドはサポートされません(例:WITH_RRNパラメータとRETURN_RRNパラメータ)。
· 仮想フィールドの設定コードが動作しない場合があります。
· @@UPID フィールドに、未定義の値が設定されます。
· 相互更新検査が制限されます。つまり、別のユーザーによって実行された更新が上書きされるという可能性(2つのバッチ・ジョブが同一セットの行を同時に更新する、など)がわずかにあります。
· ファイル上に1次キーがない場合は、UPDATEコマンドとDELETEコマンドはサポートされません。
· LANSA に標準で搭載されているほとんどのテンプレートが、これらの列がないと動作しません。
· SQL は、INSERTステートメントに対してのみ再利用可能です([RRNOの欄の作成]を使用した場合は、UPDATE、DELETE、および再度読み取られたSQLステートメントに対しても再利用可能です)。すなわち、ファイルに@@UPIDおよび@@RRNOフィールドを追加すると、UPDATEおよびDELETEのパフォーマンスが向上します。
ヒントとテクニック
· PC 外部ファイルの場合は、[RRNの欄の作成]の初期値をファイルのロード中に設定できます。新規インストールの場合は、デフォルトでNOになります。選択した値は記憶され、次回ロード時に使用されます(「他のデータ・ソースのロード・オプション」を参照)。
プラットフォームについて
· IBM i:このオプションは、LANSAファイルに対しては無視されます。このオプションは、他のファイルに対してはYES(チェックあり)である必要があります。
注:LANSAファイルに自動RRNO設定が導入されたことにより、新しいLANSAファイルにRRNの欄を作成することは必須となりました。自動RRNOを設定すると、RRNOを格納するIDカラムが作成されます。
これにより、RRNOの生成の非常に速いメソッドが提供されます。既に廃止された、外部ファイルを使って次のRRNOを保存するメソッドよりもずっと速くなります。(上記に記されている通り)
RRNOが使用されていないと、重要な多くのLANSA機能が使用できなくなってしまいます。RRNOは不必要だと思うかもしれませんが、LANSAには必要です。これがないと、多くの機能の導入が非常に難しくなります。このRRNOがあることで、実際のLANSA開発やLANSAの実行が処理が速くなります。
さらに、次のトピックも参照してください。