3.6.17 [フィールド名の特殊文字の変換]
フィールド名からデータベースの列を作成するときに、フィールド名をそのまま使用するかどうかを指定します。
デフォルト:LANSAバージョン11 SP4以降で作成されたファイルの場合はNO (チェックなし)。それより古いバージョンで作成されたファイルの場合はYES (チェックあり)
LANSAバージョン11 SP4より古いバージョンの場合、Windows環境でコンパイルされたファイルにより、フィールド名が同じでないデータベース列が作成されることがあり ます。例えば、デモンストレーション・ファイルSECTABのSECTIONフィールドは、S_CTIONとして作成されます。これは、SECTIONが SQLキーワードだからです。同じ理由で、列MY@FLDはMY_FLDとして作成されます。
バージョン11 SP4以降、新しいファイル内のフィールド名はデータベースで変換されません。
これにより、これまでWindows環境でコンパイルされずにエラー979で失敗していたファイルをVisual LANSAで使用できるようになりました。例えば、ファイルにMY@FLDおよびMY#FLDという2つのフィールドがある場合、Windowsでのファ イルの作成は失敗し、以下のメッセージが表示されていました。
979 致命的 - フィールド MY@FLD と MY#FLD は同じ名前のSQL列名 MY_FLD に分割します。
そのため、このファイルを使用できるのはSystem iのみでした。今後は、設定をNO (チェックなし)に変更することで、ファイルを正常に作成できます。
警告
· LANSA では、以前Windowsで正常にコンパイルされたファイルに対してこの設定をNO/チェックなしに変更することはできません。チェックありからチェック なしへの変更は、ファイルのコンパイルがエラー979で失敗した場合のみ行ってください。
· LANSA では、V11 SP4以降で作成されたファイルに対してこの設定をYES/チェックありに変更することはできません。
· こ の設定を変更した場合、そのファイルに対してSELECT_SQLを使用するすべてのファンクションまたはコンポーネント、およびこのファイルがバッチ制 御または事前結合フィールドのターゲットとなっているファイルのOAMを再コンパイルし、再配布する必要があります。
· テー ブルにアクセスするLANSA以外のアプリケーションでは、列名として実際のフィールド名を使用し、問題を防ぐためにこれらの識別子を引用符で囲んでくだ さい。
ヒントとテクニック
プラットフォームについて
· IBM i:このファイル属性は、IBM iデータベース内のファイルには適用されません。