Nested package reference : Package « PL SQL « Oracle PL / SQL






Nested package reference

    

SQL> CREATE TABLE EMP(
  2      EMPNO NUMBER(4) NOT NULL,
  3      ENAME VARCHAR2(10),
  4      JOB VARCHAR2(9),
  5      MGR NUMBER(4),
  6      HIREDATE DATE,
  7      SAL NUMBER(7, 2),
  8      COMM NUMBER(7, 2),
  9      DEPTNO NUMBER(2)
 10  );

Table created.

SQL> create or replace package myPackage1 is
  2   procedure P1; end;
  3  /

Package created.

SQL> create or replace package body myPackage1 is
  2   procedure P1 is
  3   v_cnt number;
  4   begin
  5       select count(*) into v_cnt from emp;
  6   end;
  7   end;
  8  /

Package body created.

SQL> create or replace package myPackage2 is procedure P2; end;
  2  /

Package created.

SQL> create or replace package body myPackage2 is
  2   procedure P2 is
  3   begin
  4       myPackage1.P1;
  5   end;
  6   end;
  7  /

Package body created.

SQL> create or replace package myPackage3 is procedure P3; end;
  2  /

Package created.

SQL> create or replace package body myPackage3 is
  2   procedure P3 is
  3   begin
  4       myPackage2.P2;
  5   end;
  6  end;
  7  /

Package body created.

SQL> create or replace package myPackage4 is
  2   procedure P4; end;
  3  /

Package created.

SQL> create or replace package body myPackage4 is
  2   procedure P4 is
  3   begin
  4       myPackage3.P3;
  5   end;
  6   end;
  7  /

Package body created.

SQL> create or replace package body myPackage1 is
  2   procedure P1 is
  3   v_cnt number;
  4   begin
  5       select count(*) into v_cnt from emp where empno > 0;
  6   end;
  7   end;
  8  /

Package body created.

SQL>
SQL> select object_name, object_type, status
  2   from user_objects
  3   where object_name in ('MYPACKAGE1','MYPACKAGE2','MYPACKAGE3','MYPACKAGE4');

no rows selected

SQL>
SQL>
SQL> drop table emp;

Table dropped.

   
    
    
    
  








Related examples in the same category

1.Create a package declaration and create its body after
2.Create a package level variable
3.call utitilities package
4.Package for output employee table and log message
5.Package with package level cursor variable
6.Overloading Packaged Subprograms
7.A PL/SQL package with two methods
8.Package level Exception
9.This package will not compile because the body does not match the specification.
10.dependencies between an anonymous calling block and package runtime state.
11.RESTRICT_REFERENCES pragma.
12.Without RESTRICT_REFERENCES pragma.
13.Persistance of packaged variables.
14.A package with one method
15.Package level variable as global level variable
16.Global definition
17.Student fetch package
18.Cursor operation between package functions
19.The pragma is not valid at the package level.
20.Create package and member cursor
21.Overloaded packages.
22.Overloading based on user defined object types.
23.package RECURSION
24.Crosss reference between two packages
25.Counter package
26.Package initialization.
27.Packages allows forward references, thus opening the possibilities for recursion.
28.Use package level type as global variables
29.Use package member variable to pass value