Beispiele für das Kopieren von PL/SQL-Paketen

Die folgenden Beispiele zeigen die DDL, die generiert wird, wenn Sie PL/SQL-Pakete zwischen heterogenen Datenbanken kopieren.

Die generierte DDL-Datei wird auf der Seite DDL voranzeigen im Assistenten Datenbankobjekte einfügen angezeigt.

In Tabelle 1 werden Beispiele für die DDL gezeigt, die für das Kopieren von PL/SQL-Paketen aus einer Oracle Database 11g-Quellendatenbank in eine DB2 Version 9.7 für Linux®, UNIX® und Windows®-Zieldatenbank generiert wird.

Tabelle 1. Beispiele für das Kopieren von PL/SQL-Paketen aus Oracle Database 11g in eine DB2 Version 9.7 für Linux, UNIX und Windows-Datenbank
Oracle Database 11g - PL/SQL-Paketdefinition Generierte DDL für Datenbank in DB2 Version 9.7
CREATE PACKAGE scott.trans_data AS
-- package with no body
   minimum_balance   CONSTANT REAL := 10.00;
   number_processed   INT;
   insufficient_funds EXCEPTION;
END trans_data;
/
CREATE PACKAGE scott.trans_data AS
-- package with no body
   minimum_balance   CONSTANT REAL := 10.00;
   number_processed   INT;
   insufficient_funds EXCEPTION;
END trans_data;
CREATE OR REPLACE PACKAGE test_pack1 AS
   FUNCTION create_dept
     (department_id NUMBER,
      location_id NUMBER)
      RETURN NUMBER;
END test_pack1;
/

CREATE OR REPLACE PACKAGE BODY test_pack1 AS
   tot_emps NUMBER;
   tot_depts NUMBER;
   FUNCTION create_dept
     (department_id NUMBER,
      location_id NUMBER)
      RETURN NUMBER IS
         new_deptno NUMBER;
      BEGIN
         INSERT INTO nums1 VALUES (1);
         RETURN(new_deptno);
      END create_dept;

BEGIN
   tot_emps := 0;
END test_pack1;
/
CREATE PACKAGE test_pack1 AS
   FUNCTION create_dept
     (department_id NUMBER,
      location_id NUMBER)
      RETURN NUMBER;
END test_pack1;
/

CREATE PACKAGE BODY test_pack1 AS
   tot_emps NUMBER;
   tot_depts NUMBER;
   FUNCTION create_dept
     (department_id NUMBER,
      location_id NUMBER)
      RETURN NUMBER IS
         new_deptno NUMBER;
      BEGIN
         INSERT INTO nums1 VALUES (1);
         RETURN(new_deptno);
      END create_dept;

BEGIN
   tot_emps := 0;
END test_pack1;

In Tabelle 2 wird ein Beispiel für die DDL gezeigt, die für das Kopieren eines PL/SQL-Pakets aus einer DB2 Version 9.7 für Linux, UNIX und Windows-Quellendatenbank in eine Oracle Database 11g-Zieldatenbank generiert wird.

Tabelle 2. Beispiel für das Kopieren eines PL/SQL-Pakets aus DB2 Version 9.7 für Linux, UNIX und Windows-Datenbank in Oracle Database 11g
DB2 Version 9.7-Datenbank - PL/SQL-Paketdefinition Generierte DDL für Oracle Database 11g
CREATE OR REPLACE PACKAGE ARITHMETIC AS
   function add (
      first number,
      second number)
   return number;
END ARITHMETIC;


CREATE OR REPLACE PACKAGE BODY ARITHMETIC AS
  function add(
      first number,
      second number)
   return number AS

  BEGIN
   return first + second;
  END add;
END ARITHMETIC;
CREATE OR REPLACE PACKAGE ARITHMETIC AS
   function add (
      first number,
      second number)
   return number;
END ARITHMETIC;


CREATE OR REPLACE PACKAGE BODY ARITHMETIC AS
  function add(
      first number,
      second number)
   return number AS

  BEGIN
   return first + second;
  END add;
END ARITHMETIC;

Feedback