PL/SQL NULL Statement 😶¶
Mentor's Note: In English, a "Placeholder" is a word used when you don't have the real word yet. In PL/SQL,
NULL;is a command that tells Oracle: "Do absolutely nothing." It sounds useless, but it's actually required by the grammar of the language in certain situations! 💡
🌟 The Scenario: The Under Construction Sign 🚧¶
Imagine you are building a house.
- You have a room marked "Future Gym".
- Right now, there is nothing in it.
- But the building inspector says every room must have something inside to pass inspection.
- You put a sign that says "UNDER CONSTRUCTION". That sign is the NULL; statement.
💻 1. Usage: Placeholder for Logic¶
PL/SQL requires that every branch of an IF or CASE has at least one statement.
DECLARE
v_job VARCHAR2(20) := 'INTERN';
BEGIN
IF v_job = 'CEO' THEN
Process_Huge_Bonus;
ELSE
-- We don't have a plan for interns yet, but we need a line of code.
NULL; -- 🚧 Placeholder
END IF;
END;
💻 2. Usage: Following a Label¶
Labels (for GOTO) cannot be the last thing in a block. They must be followed by a statement.
BEGIN
IF some_condition THEN
GOTO end_of_program;
END IF;
-- ... more code ...
<<end_of_program>>
NULL; -- ✅ Required so the label has something to point to
END;
🛡️ 3. Why use it? (Architect's Note)¶
- Readability: Using
NULL;shows that you intentionally decided to do nothing. It's better than leaving a gap which might look like a mistake. - Grammar: It satisfies the PL/SQL compiler's requirement for executable statements.