Пакет – это объект базы данных, который группирует логически связанные типы, программные объекты и подпрограммы PL/SQL. Под пакетом сразу подразумевается две вещи: спецификация пакета и тело пакета.
Спецификация пакета – это интерфейс с перечнем приложений, тут объявляются типы, переменные, константы, исключения, курсоры и подпрограммы, доступные для использования в самом пакете. Спецификация содержит ОБЩИЕ объявления.
Тело пакета – здесь уже более подробное определение курсоров и подпрограмм, другими словами их реализация.
В отличии от подпрограмм, пакеты нельзя вызывать, передавать им какие-либо параметры или вкладывать пакет друг в друга.
Простыми словами, можно сказать, что спецификация пакета – это объявления всех необходимых подпрограмм и прочего, а тело пакета – это более детальное описание каждой подпрограммы – их тела.