Running Background PL/SQL

You can use the APEX_PLSQL_JOB package to run PL/SQL code in the background of your application. This is an effective approach for managing long running operations that do not need to complete for a user to continue working with your application.

APEX_PLSQL_JOB is a wrapper package around DBMS_JOB functionality offered in the Oracle database. Note that the APEX_PLSQL_JOB package only exposes that functionality which is necessary to run PL/SQL in the background.

Table: APEX_PLSQL_JOB Package: Available Functions describes the functions available in the APEX_PLSQL_JOB package.

APEX_PLSQL_JOB Package: Available Functions

Function or Procedure Description


Use this procedure to submit background PL/SQL. This procedure returns a unique job number. Because you can use this job number as a reference point for other procedures and functions in this package, it may be useful to store it in your own schema.


Call this procedure to update the status of the currently running job. This procedure is most effective when called from the submitted PL/SQL.


Use this function to determine how much time has elapsed since the job was submitted.


Call this function to determine whether the database is currently in a mode that supports submitting jobs to the APEX_PLSQL_JOB package.


Call this procedure to clean up submitted jobs. Submitted jobs stay in the APEX_PLSQL_JOBS view until either Oracle Application Express cleans out those records, or you call PURGE_PROCESS to manually remove them.

You can view all jobs submitted to the APEX_PLSQL_JOB package using the APEX_PLSQL_JOB view.

All Application Programming Interface packages for Application Express are described in the Oracle Application Express API Reference.

See Also:

"APEX_PLSQL_JOB" in Oracle Application Express API Reference