Published: 2/19/2026 Counter Package Example to maintain a counter Code-- DROP PACKAGE counter_pkg CREATE OR REPLACE PACKAGE counter_pkg IS FUNCTION get_counter RETURN NUMBER; FUNCTION increment_counter RETURN NUMBER; FUNCTION reset_counter RETURN NUMBER; END counter_pkg; CREATE OR REPLACE PACKAGE BODY counter_pkg IS counter NUMBER := 0; FUNCTION get_counter RETURN NUMBER IS BEGIN RETURN counter; END get_counter; FUNCTION increment_counter RETURN NUMBER IS BEGIN counter := counter + 1; RETURN counter; END increment_counter; FUNCTION reset_counter RETURN NUMBER IS BEGIN counter := 0; RETURN counter; END reset_counter; END counter_pkg; Example Usage: SELECT counter_pkg.reset_counter AS counter_reset, counter_pkg.increment_counter AS counter_1, counter_pkg.increment_counter AS counter_2, counter_pkg.get_counter AS couter_now FROM dual;