What's New

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

  • EDB Postgres Advanced Serverバージョン13の評価。Oracleの互換性がさらに向上し、新しいPostgres機能が追加されました。

  • IBMCloudに加えて、Oracleスキーマを次のクラウドプラットフォームにインストールされたEDB Postgres Advanced Serverに移行できるようになりました。

    • AmazonAWS

    • Googleクラウド

    • MicrosoftAzure

  • スキーマのオフライン評価が必要な場合は、移行サービスについて連絡できるように、お問い合わせフォームを追加しました。

  • このリリースでは、DDL抽出スクリプトに必要な特権が少なくなりました。現在は、 CONNECT と SELECT_CATALOG_ROLE の役割と CREATE TABLE の特権のみが必要です。

Repair Handler

次の修復ハンドラは、Oracleの構文をPostgres互換の構文に変換するため、手動で行う必要はありません。

  • ERH1013-PACKAGE_BODY_PROC/FUNC_DECLARATION

    PACKAGEBODY定義からPROCEDURE/FUNCTION宣言を削除します。

    たとえば、

    CREATE OR REPLACE PACKAGE BODY package_name
    IS
         PROCEDURE sample_proc;
    
         var1 number:=0;
    
         FUNCTION Func_name RETURN number;
    
         PROCEDURE proc_name
         IS
         BEGIN
             NULL;
         END;
    
         PROCEDURE sample_proc
         IS
         BEGIN
             NULL;
         END;
    
         FUNCTION Func_name RETURN number
         IS
         BEGIN
             return 1;
         END;
     END;
    

    このようになります;

CREATE OR REPLACE PACKAGE BODY package_name
  IS

      var1 number:=0;

      PROCEDURE proc_name
      IS
      BEGIN
          NULL;
      END;

      PROCEDURE sample_proc
      IS
      BEGIN
          NULL;
      END;

      FUNCTION Func_name RETURN number
      IS
      BEGIN
          return 1;
      END;
END``
  • ERH2091-CREATE_TABLE_CREATE_INDEX

    CREATEINDEX定義のINDEXの名前からschema-nameを削除します。

    たとえば、

    CREATE TABLE "HR"."DEPARTMENTS"
       (       "DEPARTMENT_ID" NUMBER(4,0),
        "DEPARTMENT_NAME" VARCHAR2(30) CONSTRAINT "DEPT_NAME_NN" NOT NULL ENABLE,
        "MANAGER_ID" NUMBER(6,0),
        "LOCATION_ID" NUMBER(4,0)
       ) ;
    CREATE UNIQUE INDEX "HR"."DEPT_ID_PK" ON "HR"."DEPARTMENTS" ("DEPARTMENT_ID");
    

    このようになります;

    CREATE TABLE "HR"."DEPARTMENTS"
       ( "DEPARTMENT_ID" NUMBER(4,0),
          "DEPARTMENT_NAME" VARCHAR2(30) CONSTRAINT "DEPT_NAME_NN" NOT NULL ENABLE,
          "MANAGER_ID" NUMBER(6,0),
          "LOCATION_ID" NUMBER(4,0)
       ) ;
    CREATE UNIQUE INDEX "DEPT_ID_PK" ON "HR"."DEPARTMENTS" ("DEPARTMENT_ID");
    
  • ERH2092-ALTER_TABLE_ADD_PRIMARY_KEY

    PRIMARYKEY構文のOracleのALTERTABLEADDCONSTRAINTをAdvancedServer互換構文に変換します。

    たとえば、

    CREATE TABLE "HR"."DEPARTMENTS"
       (       "DEPARTMENT_ID" NUMBER(4,0),
        "DEPARTMENT_NAME" VARCHAR2(30) CONSTRAINT "DEPT_NAME_NN" NOT NULL ENABLE,
        "MANAGER_ID" NUMBER(6,0),
        "LOCATION_ID" NUMBER(4,0)
       ) ;
    CREATE UNIQUE INDEX "HR"."DEPT_ID_PK" ON "HR"."DEPARTMENTS" ("DEPARTMENT_ID");
    ALTER TABLE "HR"."DEPARTMENTS" ADD CONSTRAINT "DEPT_ID_PK" PRIMARY KEY ("DEPARTMENT_ID")
      USING INDEX "HR"."DEPT_ID_PK"  ENABLE;
    

    このようになります;

    CREATE TABLE "HR"."DEPARTMENTS"
       (       "DEPARTMENT_ID" NUMBER(4,0),
        "DEPARTMENT_NAME" VARCHAR2(30) CONSTRAINT "DEPT_NAME_NN" NOT NULL ENABLE,
        "MANAGER_ID" NUMBER(6,0),
        "LOCATION_ID" NUMBER(4,0)
       ) ;
    CREATE UNIQUE INDEX "DEPT_ID_PK" ON "HR"."DEPARTMENTS" ("DEPARTMENT_ID");
    ALTER TABLE "HR"."DEPARTMENTS" ADD PRIMARY KEY
      USING INDEX "DEPT_ID_PK";