====== CREATE PACKAGE Statement ====== CREATE PACKAGE statement allows you to define a collection of related variables, procedures and functions. **Syntax** Package specification: [CREATE [OR REPLACE] | REPLACE] PACKAGE package_name AS | IS package_spec END package_spec: variable declaration | function declaration | procedure declaration Package body: [CREATE [OR REPLACE] | REPLACE] PACKAGE BODY package_name AS | IS package_body END package_body: private variable declaration | function definition | procedure definition **Example**: Define a package and then call its members. Package specification: create or replace package users as session_count int := 0; function get_count() return int; procedure add(name varchar(100)); end; Package body: create or replace package body users as function get_count() return int is begin return session_count; end; procedure add(name varchar(100)) is begin -- ... session_count = session_count + 1; end; end; Using the package: users.add('John'); users.add('Sarah'); users.add('Paul'); print 'Number of users: ' || users.get_count(); **Compatibility:** Oracle **Version**: HPL/SQL 0.3.13 See also: * [[udf-sproc|User-Defined Functions and Stored Procedures]] * [[call|CALL]] * [[create-function|CREATE FUNCTION]] * [[create-procedure|CREATE PROCEDURE]] * [[include|INCLUDE]]