OverLoading concept in Oracle PLSQL

Overloading concept in Oracle PL/SQL

Overloading concept means, it allows you to overload procedures or functions in package with same name but different in data type and order of the parameters. When you call an over load subprogram, compiler determines which subprogram to call based on the data type which used in subprograms.

Single sub programs cannot be overloaded.

Example:

create or replace package testpack
is
Procedure test1(p_num NUMBER, p_name VARCHAR2);
Procedure test1(p_num NUMBER, p_name VARCHAR2,p_num2 NUMBER);
end testpack;
/

show error

create or replace package body testpack
is
Procedure test1(p_num NUMBER, p_name VARCHAR2)
IS
BEGIN
DBMS_OUTPUT.put_line('Test1');
END;

Procedure test1(p_num NUMBER, p_name VARCHAR2,p_num2 NUMBER)
IS
BEGIN
DBMS_OUTPUT.put_line('Test2');
END;
end testpack;
/
show error