While not technically incorrect, the omission of BEGIN...END can be misleading and may lead to the introduction of errors during
maintenance.
In the following example, the two statements seem to be attached to the IF statement, but only the first one is, and
somethingElse will always be executed:
IF @flag = 1 -- Noncompliant
EXEC something;
EXEC somethingElse;
Adding BEGIN...END improves the code readability and its robustness:
IF @flag = 1
BEGIN
EXEC something;
EXEC somethingElse;
END;
The rule raises an issue when a control structure has no BEGIN...END.