This Oracle tutorial explains how to use the GOTO statement in Oracle with syntax and examples.
The GOTO statement causes the code to branch to the label after the GOTO statement.
The syntax for the GOTO statement in Oracle/PLSQL consists of two parts - the GOTO statement and the Label Declaration:
The GOTO statement consists of the GOTO keyword, followed by a label_name.
GOTO label_name;
The Label Declaration consists of the label_name encapsulated in << >>, followed by at least one statement to execute.
<<label_name>>
{...<strong>statements...</strong>}
Let's look at an Oracle example that uses the GOTO statement.
CREATE OR REPLACE Function FindCourse
( name_in IN varchar2 )
RETURN number
IS
cnumber number;
CURSOR c1
IS
SELECT MAX(course_number)
FROM courses_tbl
WHERE course_name = name_in;
BEGIN
open c1;
fetch c1 into cnumber;
IF c1%notfound then
GOTO default_number;
ELSE
GOTO increment_number;
END IF;
<<default_number>>
cnumber := 0;
<<increment_number>>
cnumber := cnumber + 1;
close c1;
RETURN cnumber;
END;
In this GOTO example, we have created two GOTO statements. The first one is called default_number and the second one is called increment_number.