Использование 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 также занимает одну строку, указывая на завершение блока.

ms189079.note(ru-ru,SQL.90).gifПримечание.
Блок инструкций BEGIN и END должен содержать минимум одну инструкцию Transact-SQL.

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

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

См. также

Другие ресурсы

BEGIN...END (Transact-SQL)
Операторы END (BEGIN...END) (Transact-SQL)
Язык управления потоком (Transact-SQL)

Справка и поддержка

Получение помощи по SQL Server 2005