DB2_COMPATIBILITY_VECTOR レジストリー変数は、1 つ以上の DB2® 互換フィーチャーを有効にします。 これらのフィーチャーによって、DB2 製品以外のリレーショナル・データベース製品用として作成されたアプリケーションを、DB2 バージョン 9.5 以降にマイグレーションするタスクが容易になります。
このレジストリー変数は、Linux、UNIX、および Windows オペレーティング・システムでサポートされます。
次の表は、各互換フィーチャーを有効にするために必要な設定を示しています。
ビット位置 (16 進値) | 互換フィーチャー | 説明 |
---|---|---|
1 (0x01) | ROWNUM 疑似列 | ROWNUM を ROW_NUMBER() OVER() の同義語として使用することを可能にし、ROWNUM を SQL ステートメントの WHERE 節に含めることを許可します。 |
2 (0x02) | DUAL 表 | DUAL 表への非修飾参照を SYSIBM.DUAL として解決します。 |
3 (0x04) | 外部結合演算子 | 外部結合演算子 (+) のサポートを有効にします。 |
4 (0x08) | 階層照会 | CONNECT BY 節を使用した階層照会のサポートを有効にします。 |
5 (0x10) | NUMBER データ・タイプ 1 | NUMBER データ・タイプおよび関連する数値処理のサポートを有効にします。 このサポートを有効にしてデータベースを作成すると、number_compat データベース構成パラメーターはオンに設定されます。 |
6 (0x20) | VARCHAR2 データ・タイプ 1 | VARCHAR2 データ・タイプと NVARCHAR2 データ・タイプ、および関連する文字ストリング処理のサポートを有効にします。 このサポートを有効にしてデータベースを作成すると、varchar2_compat データベース構成パラメーターはオンに設定されます。 |
7 (0x40) | DATE データ・タイプ 1 | DATE データ・タイプを、日付と時刻の値を結合した TIMESTAMP(0) データ・タイプとして変換処理できるようにします。 例えば、日付互換性モードでの「VALUES CURRENT DATE」は、2011-02-17-10.43.55 のような値を戻します。 このサポートを有効にしてデータベースを作成すると、date_compat データベース構成パラメーターはオンに設定されます。 |
8 (0x80) | TRUNCATE TABLE | TRUNCATE ステートメント用の代替セマンティクスを有効にします。 IMMEDIATE がオプションのキーワードであり、指定がない場合にデフォルトになります。 TRUNCATE ステートメントが論理作業単位内の最初のステートメントではない場合、TRUNCATE ステートメントが実行される前に暗黙的なコミット操作が実行されます。 |
9 (0x100) | 文字リテラル | バイト長が 254 以下である文字定数および GRAPHIC ストリング定数に、(VARCHAR データ・タイプでも VARGRAPHIC データ・タイプでもなく) CHAR データ・タイプまたは GRAPHIC データ・タイプを割り当てることを可能にします。 |
10 (0x200) | コレクション・メソッド | 配列で first、last、next、previous などの演算を実行するメソッドの使用を可能にします。 また、配列内の特定の要素の参照に、大括弧の代わりに括弧を使用できるようにします。例えば、array1(i) は array1 の要素 i を参照します。 |
11 (0x400) | Oracle データ・ディクショナリー互換ビュー 1 | Oracle データ・ディクショナリー互換ビューの作成を可能にします。 |
12 (0x800) | PL/SQL のコンパイル 2 | PL/SQL ステートメントおよび言語要素のコンパイルと実行を可能にします。 |
13 (0x1000) | インセンシティブ・カーソル | SELECT ステートメントで FOR UPDATE が明示的に指定されていない場合に、WITH RETURN が定義されたカーソルをインセンシティブにできるようにします。 |
14 (0x2000) | INOUT パラメーター | INOUT パラメーター宣言の DEFAULT 指定を可能にします。 |
15 (0x4000) | LIMIT 節と OFFSET 節 | 全選択ステートメント、UPDATE ステートメント、および DELETE ステートメントにおいて、MySQL 互換かつ PostgreSQL 互換である LIMIT 節および OFFSET 節の使用を可能にします。 |
17 (0x10000) | SQL データ・アクセス・レベルの適用 | ルーチンが実行時に SQL データ・アクセス・レベルを適用できるようにします。 |
18 (0x20000) | Oracle データベース・リンク構文 | 他のデータベース内のオブジェクトにアクセスするための Oracle データベース・リンク構文を有効にします。 |
|
DB2_COMPATIBILITY_VECTOR レジストリー変数を設定する場合、データベースを Unicode データベースとして作成します。
db2set DB2_COMPATIBILITY_VECTOR=ORA
db2stop
db2start
db2set DB2_COMPATIBILITY_VECTOR=03
db2stop
db2start
db2set DB2_COMPATIBILITY_VECTOR=
db2stop
db2start
以下のいずれかのフィーチャーが有効になっているときにデータベースを作成すると、この db2set コマンドの実行後も、そのデータベースではこれらのフィーチャーを引き続き使用できます。