call utitilities package : Package « PL SQL « Oracle PL / SQL






call utitilities package

    
SQL>
SQL>  create or replace
  2    package utilities as
  3      procedure swap( p_parm1 in out number,
  4                      p_parm2 in out number );
  5      procedure swap( p_parm1 in out varchar2,
  6                      p_parm2 in out varchar2 );
  7      procedure swap( p_parm1 in out date,
  8                      p_parm2 in out date );
  9    end utilities;
 10  /

Package created.

SQL>
SQL>  create or replace
  2    package body utilities as
  3
  4      procedure swap( p_parm1 in out number,
  5                 p_parm2 in out number ) is
  6        l_temp number;
  7      begin
  8        dbms_output.put_line( 'Swapping number' );
  9        l_temp := p_parm1;
 10        p_parm1 := p_parm2;
 11        p_parm2 := l_temp;
 12      end swap;
 13
 14      procedure swap( p_parm1 in out varchar2,
 15                      p_parm2 in out varchar2 ) is
 16        l_temp varchar2(32767);
 17      begin
 18        dbms_output.put_line( 'Swapping varchar2' );
 19        l_temp := p_parm1;
 20        p_parm1 := p_parm2;
 21        p_parm2 := l_temp;
 22      end swap;
 23
 24      procedure swap( p_parm1 in out date,
 25                      p_parm2 in out date ) is
 26        l_temp date;
 27      begin
 28        dbms_output.put_line( 'Swapping date' );
 29        l_temp := p_parm1;
 30        p_parm1 := p_parm2;
 31        p_parm2 := l_temp;
 32      end swap;
 33
 34    end utilities;
 35    /

Package body created.

SQL>
SQL>
SQL>  declare
  2      l_num1 number := 1;
  3      l_num2 number := 2;
  4      l_date1 date := sysdate;
  5      l_date2 date := sysdate + 1;
  6    begin
  7      utilities.swap( l_num1, l_num2 );
  8      dbms_output.put_line( 'l_num1 = ' || l_num1 );
  9      dbms_output.put_line( 'l_num2 = ' || l_num2 );
 10      utilities.swap( l_date1, l_date2 );
 11      dbms_output.put_line( 'l_date1 = ' || l_date1 );
 12      dbms_output.put_line( 'l_date2 = ' || l_date2 );
 13    end;
 14    /
Swapping number
l_num1 = 2
l_num2 = 1
Swapping date
l_date1 = 12-JUN-08
l_date2 = 11-JUN-08

PL/SQL procedure successfully completed.

SQL>

   
    
    
  








Related examples in the same category

1.Create a package declaration and create its body after
2.Create a package level variable
3.Package for output employee table and log message
4.Package with package level cursor variable
5.Overloading Packaged Subprograms
6.A PL/SQL package with two methods
7.Package level Exception
8.This package will not compile because the body does not match the specification.
9.dependencies between an anonymous calling block and package runtime state.
10.RESTRICT_REFERENCES pragma.
11.Without RESTRICT_REFERENCES pragma.
12.Persistance of packaged variables.
13.A package with one method
14.Package level variable as global level variable
15.Global definition
16.Student fetch package
17.Cursor operation between package functions
18.The pragma is not valid at the package level.
19.Create package and member cursor
20.Nested package reference
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