Поделиться через


BEGIN...END (Transact-SQL)

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

Значок ссылки на разделСоглашения о синтаксисе в Transact-SQL

Синтаксис

BEGIN
     { 
        sql_statement | statement_block 
     } 
END

Аргументы

  • { sql_statement| statement_block }
    Любая допустимая инструкция или группа инструкций языка Transact-SQL, определенная с помощью блока инструкций.

Замечания

Блоки BEGIN...END могут быть вложенными.

Хотя все инструкции языка Transact-SQL допустимы в пределах блока BEGIN...END, некоторые инструкции языка Transact-SQL не следует группировать вместе в пределах одного пакета (блока инструкций). Дополнительные сведения см. в разделе Пакеты и в разделах, посвященных использованию отдельных инструкций.

Примеры

В следующем примере ключевые слова BEGIN и END определяют последовательность инструкций языка Transact-SQL, которые будут выполняться вместе. Если не включить блок BEGIN...END, будут выполнены оба оператора ROLLBACK TRANSACTION и возвращены оба сообщения PRINT.

USE AdventureWorks;
GO
BEGIN TRANSACTION;
GO
IF @@TRANCOUNT = 0
BEGIN
SELECT * from Person.Contact WHERE LastName = 'ADAMS';
ROLLBACK TRANSACTION
PRINT N'Rolling back the transaction two times would cause an error.'
END
ROLLBACK TRANSACTION
PRINT N'Rolled back the transaction.'
GO
/*
Rolled back the tranaction.
*/

См. также

Справочник

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

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

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