デフォルトはTRANSACTION_DEFAULT=IMPLICITです。
規格DECLARE ALIAS文のUSER DEFAULT句を使用する場合、この修飾子を使用して、コンパイル時のユーザー名をプログラムに渡します。
WARNING修飾子およびNOWARNING修飾子を使用して、情報メッセージおよび警告メッセージをSQLモジュール・プロセッサによって書き込むかどうかを指定します。
NOWARN修飾子を指定する場合、警告オプションは指定できません。
- SQLモジュール言語では、様々なコンテキストで動的文字列を適切に処理できますが、GENERAL言語を使用する場合は必ず、正確な長さの静的記述子または動的記述子のいずれかを使用する必要があります。
GENERAL言語を指定してSQLモジュール言語ソース・ファイルを作成し、記述子で文字パラメータを渡す場合、渡される文字列の長さは指定された文字パラメータの最大サイズと同じである必要があります。同じでない場合、元の動的文字列のデータフィールド文字位置の後と同じ位置に、空白で文字列を埋め込むかわりに、余分な文字が格納されます。この制限は、静的文字列記述子ではなく動的文字列記述子を使用する言語(BASICやVAX SCANなど)からモジュール言語をコールするとき、特にINSERT操作でパラメータが渡されるときにのみ適用されます。
BASICなどの言語でこの問題を回避するには、MAP宣言で文字列定義を配置します。これにより、文字列は動的ではなく静的になります。- ファイル拡張子が違う場合でも、ホスト言語モジュール・ソース・ファイルおよび対応するSQLモジュール・ファイルには異なるファイル名を付けます。SQLモジュール・プロセッサとホスト言語コンパイラの両方で.objファイルが作成されます。ソース・ファイル名が同じ場合、LINKコマンドは失敗します。
- Adaをソース言語として使用してSQLモジュールをコンパイルすると、Oracle RdbではSQLモジュール内のすべてのプロシージャに対するAda宣言を含むAdaパッケージが生成されます。各ルーチンの宣言の一部は、各パラメータの宣言です。これらのパラメータは、SQL_STANDARDパッケージ内のデータ型を使用して宣言されます。詳細は、第3.5節の最後にある「使用方法」を参照してください。
- データベース・オプション修飾子を使用しても、下位互換性は作成されません。ここで、下位互換性とは、古いバージョンのデータベース・システムにリモートでアクセスすることを指します。ただし、インタフェースには、最新のバージョンでのみ使用可能なサポート・ルーチンが必要です。つまり、Oracle Rdb V6.0でコンパイルおよびリンクを行い、Oracle Rdb V5.1でプログラムを実行することはできません。
例1: SQLモジュールでのプログラムのコンパイルおよびリンク次の例は、第3.2節の例にあるPascalのサンプル・プログラムをコンパイル、リンクおよび実行するコマンドを示しています。
$ SQLMOD :== $SQL$MOD $ SQLMOD LIST_EMP_PASMOD.SQLMOD $ PASCAL LIST_EMP.PAS $ ! This LINK command requires that the logical name $ ! LNK$LIBRARY is defined as SYS$LIBRARY:SQL$USER.OLB $ LINK LIST_EMP.OBJ, LIST_EMP_PASMOD.OBJ $ RUN LIST_EMP.EXE Matching Employees: Alvin Toliver Louis Tarbassian