BEGIN...END (Transact-SQL)

Umieszcza serii Transact-SQL instrukcje, aby grupy Transact-SQL może być wykonywany instrukcji. BEGIN i END są słów kluczowych języka kontroli przepływu.

Topic link iconKonwencje składni języka Transact-SQL

BEGIN
     { 
        sql_statement | statement_block 
     } 
END

Argumenty

  • { sql_statement| statement_block }
    Jest ważne w każdym Transact-SQL Instrukcja lub instrukcji grupowanie zgodnie z definicją za pomocą zestawu instrukcji.

Remarks

Bloki BEGIN... END można zagnieżdżać.

Chociaż wszystkie Transact-SQL instrukcje są prawidłowe w bloku BEGIN... END niektórych Transact-SQL Instrukcje powinny nie zgrupowane razem w obrębie tej samej serii lub blok instrukcja. Aby uzyskać więcej informacji zobacz Batches i pojedyncze instrukcje używane.

Przykłady

W poniższym przykładzie BEGIN i END definiowania serii Transact-SQL instrukcje wykonywania ze sobą. Jeśli BEGIN...END Blok nie zostały uwzględnione, oba ROLLBACK TRANSACTION czy wykonać instrukcji i oba PRINT wiadomości mogą być zwracane.

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.
*/