SQL>
SQL> CREATE OR REPLACE TYPE strings_nt IS TABLE OF VARCHAR2(100);
2 /
Type created.
SQL>
SQL> CREATE OR REPLACE PACKAGE employees_pkg
2 IS
3 vancouver_employees strings_nt := strings_nt ('R', 'H', 'D', 'S', 'C');
4 newyork_employees strings_nt := strings_nt ('H', 'S', 'A');
5 boston_employees strings_nt := strings_nt ('S', 'D');
6
7 PROCEDURE show_employees(title_in IN VARCHAR2,employees_in IN strings_nt);
8 END;
9 /
Package created.
SQL> SHO ERR
No errors.
SQL>
SQL> CREATE OR REPLACE PACKAGE BODY employees_pkg
2 IS
3 PROCEDURE show_employees(title_in IN VARCHAR2,employees_in IN strings_nt)
4 IS
5 BEGIN
6 DBMS_OUTPUT.put_line (title_in);
7
8 FOR indx IN employees_in.FIRST .. employees_in.LAST
9 LOOP
10 DBMS_OUTPUT.put_line (indx || ' = ' || employees_in (indx));
11 END LOOP;
12
13 END show_employees;
14 END;
15 /
Package body created.
SQL>
SQL> SHOw error
No errors.
SQL>
SQL> DECLARE
2 our_favorites strings_nt := strings_nt ();
3 BEGIN
4 our_favorites := employees_pkg.newyork_employees
5 MULTISET UNION DISTINCT
6 employees_pkg.vancouver_employees;
7
8 employees_pkg.show_employees('DISTINCT', our_favorites);
9 END;
10 /
PL/SQL procedure successfully completed.
SQL>