BEGIN...END (Transact-SQL)
Включает в себя последовательность инструкций языка Transact-SQL, позволяя выполнять группу инструкций Transact-SQL. Ключевые слова BEGIN и END относятся к языку потока управления.
Синтаксис
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.
*/