Verwenden von BEGIN...END
Mit den Anweisungen BEGIN und END werden mehrere Transact-SQL-Anweisungen in einem logischen Block zusammengefasst. Verwenden Sie die Anweisungen BEGIN und END immer dann, wenn eine Anweisung zur Ablaufsteuerung einen Block mit mindestens zwei Transact-SQL-Anweisungen ausführen muss.
Wenn eine IF-Anweisung z. B. die Ausführung von nur einer Transact-SQL-Anweisung steuert, wird keine BEGIN- oder END-Anweisung benötigt:
IF (@@ERROR <> 0)
SET @ErrorSaveVariable = @@ERROR
Falls @@ERROR gleich 0 ist, wird nur die SET-Anweisung übersprungen.
Verwenden Sie die Anweisungen BEGIN und END, damit die IF-Anweisung einen Anweisungsblock auslässt, wenn ihre Bedingung zu FALSE ausgewertet wird:
IF (@@ERROR <> 0)
BEGIN
SET @ErrorSaveVariable = @@ERROR
PRINT 'Error encountered, ' +
CAST(@ErrorSaveVariable AS VARCHAR(10))
END
Die Anweisungen BEGIN und END müssen als Paar verwendet werden: Eine kann nicht ohne die andere verwendet werden. Die BEGIN-Anweisung wird in einer eigenen Zeile angegeben, der der Block der Transact-SQL-Anweisungen folgt. Zum Schluss wird die END-Anweisung in einer eigenen Zeile angegeben, um das Ende des Blocks anzuzeigen.
Hinweis |
---|
Ein BEGIN- und END-Anweisungsblock muss mindestens eine Transact-SQL-Anweisung enthalten. |
Die Anweisungen BEGIN und END werden in folgenden Fällen verwendet:
Eine WHILE-Schleife muss einen Block mit Anweisungen enthalten.
Ein Element eines CASE-Ausdrucks muss einen Block mit Anweisungen enthalten.
Eine IF- oder ELSE-Klausel muss einen Block mit Anweisungen enthalten.