Name

STYL-05: Name procedures with verb phrases and functions with noun phrases.

Synopsis

We build procedures to join together (and run) a series of logically related executable statements. The name of the procedure should reflect what those statements do, and should be in the form of a verb phrase, as in:

PROCEDURE calculate_totals (...);
PROCEDURE display_favorite_flavors (...);

A function executes one or more statements with the express intent of returning a value. The name of a function should describe what is being returned and be in the form of a noun phrase, as in:

FUNCTION total_salary (...) RETURN NUMBER;
FUNCTION book_title (...) RETURN VARCHAR2;

You might also consider standardizing elements of your procedures’ verb phrases; standard prefixes can indicate the type of operation. Here are some examples:

ins_

Inserts something

get_

Selects something

del_

Deletes something

upd_

Updates something

chk_

Validates something

Example

The following table shows some bad names for procedures and functions:

Name

What’s Wrong?

Better Name

PROCEDURE 
total_salary

What is the procedure doing with total salary? Displaying it? Calculating it?

display_total_salary
FUNCTION
calculate_total_salary

Well, of course, you’re calculating the total salary—and returning it as well.

total_salary
FUNCTION
get_total_salary

What else does a function do but get and return things? Use of the get_ prefix is unnecessary; the function usage in code makes this clear.

total_salary

Benefits

The more accurately ...

Get Oracle PL/SQL Best Practices now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.