Here are several ways to get a list of functions in Oracle Database.
The user_objects
View
The user_objects
view lists all objects that are owned by the current user.
We can run a query against this view and filter its results to just functions:
SELECT
object_name
FROM
user_objects
WHERE
object_type = 'FUNCTION';
As mentioned, this returns only those objects that are owned by the current user.
To return more than that, use one of the following views.
The all_objects
View
The all_objects
view lists all objects that are accessible to the current user:
SELECT
owner,
object_name
FROM
all_objects
WHERE
object_type = 'FUNCTION';
This view includes an owner
column that tells us who the owner is, so I’ve included that in the query here.
The dba_objects
View
The dba_objects
view lists all objects in the database:
SELECT
owner,
object_name
FROM
dba_objects
WHERE
object_type = 'FUNCTION';
This view’s columns are the same as those in the all_objects
view.
We can also use the user_procedures
, dba_procedures
, and all_procedures
views to do the same thing. These views return info about functions and stored procedures.