新機能

このリリースのEDB Postgres移行ポータルには、次の機能強化が追加されています。

  • このリリース以降、Migration PortalはAdvanced Server 12をターゲットデータベースとしてサポートします。 Advanced Serverバージョン12に対してOracleスキーマを評価または再評価できるようになりました。詳細については、``Advanced Server Guide``を参照してください。 <https://www.enterprisedb.com/edb-docs/p/edb-postgres-advanced-server>`_ 。

  • ユーザーエクスペリエンスを向上させるために、新しいUIが更新されました。

新しいリペアハンドラ

Advance Serverの互換性比を改善するために、次のリペアハンドラーが追加されました。

  • ERH 2080- SIMPLE_INTEGER データ型を INTEGER 型に変換します。

    たとえば、 CREATE OR REPLACE PROCEDURE hr.mproc IS v_col1 SIMPLE_INTEGER:= 1; BEGIN DBMS_OUTPUT.PUT_LINE('Simple Integer is' || v_col1); END; は CREATE OR REPLACE PROCEDURE hr.mproc IS v_col1 INTEGER:= 1; BEGIN DBMS_OUTPUT.PUT_LINE('Simple Integer is' || v_col1); END; になります

  • ERH 2081- NATURAL データ型を INTEGER 型に変換します。

    たとえば、 CREATE OR REPLACE PROCEDURE hr.mproc IS v_col1 NATURAL:= 1; BEGIN DBMS_OUTPUT.PUT_LINE('Natural Integer is' || v_col1); END; は CREATE OR REPLACE PROCEDURE hr.mproc IS v_col1 INTEGER:= 1; BEGIN DBMS_OUTPUT.PUT_LINE('Natural Integer is' || v_col1); END; になります

  • ERH 2082-PL / SQLオブジェクト内の VARRAY コレクション型宣言からNOT NULL句を削除します。

    たとえば、 TYPE t1 IS VARRAY(10) OF INTEGER NOT NULL; は TYPE t1 IS VARRAY(10) OF INTEGER; になります

  • ERH 2083-PL / SQLオブジェクト内のネストされたテーブル型宣言から NOT NULL 句を削除します。

    たとえば、 TYPE nt IS TABLE OF NUMBER NOT NULL; は TYPE nt IS TABLE OF NUMBER; になります

  • ERH 2084-PL / SQLオブジェクト内のインデックス付きテーブルタイプ宣言から NOT NULL 句を削除します。

    たとえば、 TYPE ft IS TABLE OF VARCHAR2(10) NOT NULL INDEX BY BINARY_INTEGER; は TYPE ft IS TABLE OF VARCHAR2(10) INDEX BY BINARY_INTEGER; になります

  • ERH 2085-PL / SQLオブジェクト内で ARRAY を VARRAY コレクション型宣言に変換します。

    たとえば、 TYPE t1 IS ARRAY(10) OF INTEGER; は TYPE t1 IS VARRAY(10) OF INTEGER; になります

  • ERH 1010-節の開始で使用されるラベル名が異なる場合、SPLオブジェクトの END 節からラベル名を削除します。

    たとえば、 CREATE OR REPLACE FUNCTION hr.emp_comp (n INTEGER) RETURN NUMBER IS DECLARE counter INTEGER; BEGIN LOOP EXIT WHEN counter = n; counter:= counter + 1; END LOOP; RETURN 100; END emp_comp_123; は CREATE OR REPLACE FUNCTION hr.emp_comp (n INTEGER) RETURN NUMBER IS DECLARE counter INTEGER; BEGIN LOOP EXIT WHEN counter = n; counter:= counter + 1; END LOOP; RETURN 100; END ; になります

ナレッジベース

次の新しいナレッジベースエントリが追加されました。回避策の詳細については、移行ポータルのナレッジベースセクションを参照してください。

  • EXECUTE IMMEDIATE USING IN/OUT パラメーターの使用

    Oracleは、構文 EXECUTE IMMEDIATE の使用をサポートします<SQL or SPL Commands> [使用<bind variable list> ]。ただし、Advanced Serverは、 EXECUTE IMMEDIATE USING 構文の IN/OUT パラメーターをサポートしていません。

  • 演算子は存在しません:タイムゾーンと倍精度のないタイムスタンプ

    Oracleは、SQL操作または VIEW/MVIEW 作成での timestamp without time zone と double precision datatypes の間の追加操作をサポートします。ただし、Advanced Serverでは、倍精度データ型は、タイムゾーンデータ型なしでタイムスタンプに追加しながら、数値データ型にキャストする必要があります。

  • XML の抽出関数

    Oracleは、日付部分の抽出と XML データの抽出の両方に対して、extract()関数をサポートしています。

  • データベースリンクの移行

    OracleからAdvanced Serverへのデータベースリンクの移行中に、次のエラーが発生することがあります。エラーORA-12154:TNS:サーバー &quot;db_link_name&quot;が存在しないため、接続識別子を解決できませんでした。