Использование BEGIN...END

Инструкции BEGIN и END используются для группирования нескольких инструкций Transact-SQL в одном логическом блоке. Используйте инструкции BEGIN и END всякий раз, когда инструкция управления потоком должна выполнить блок из двух или более инструкций Transact-SQL.

Например, если инструкция IF управляет выполнением только одной инструкции Transact-SQL, добавлять инструкции BEGIN и END не нужно:

IF (@@ERROR <> 0)
   SET @ErrorSaveVariable = @@ERROR

Если @@ERROR равно 0, выполняется только одна инструкция SET.

Используйте инструкции BEGIN и END, чтобы инструкция IF пропускала блок инструкций, если он эквивалентен FALSE:

IF (@@ERROR <> 0)
BEGIN
   SET @ErrorSaveVariable = @@ERROR
   PRINT 'Error encountered, ' + 
         CAST(@ErrorSaveVariable AS VARCHAR(10))
END

Инструкции BEGIN и END используются только вместе: невозможно указать одну и не указать другую. Инструкция BEGIN занимает одну строку; за ней следует блок инструкций Transact-SQL. В конце инструкция END также занимает одну строку, указывая на завершение блока.

ПримечаниеПримечание

Блок инструкций BEGIN и END должен содержать минимум одну инструкцию Transact-SQL.

Инструкции BEGIN и END используются, когда:

  • в цикл WHILE необходимо включить блок инструкций;

  • в элемент выражения CASE необходимо включить блок инструкций;

  • в предложение IF или ELSE необходимо включить блок инструкций.