BEGIN...END (Transact-SQL)

Schließt eine Reihe von Transact-SQL-Anweisungen ein, sodass eine Gruppe von Transact-SQL-Anweisungen ausgeführt werden kann. Die Schlüsselwörter BEGIN und END gehören in die Gruppe der Sprachkonstrukte zur Ablaufsteuerung.

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen

Syntax

BEGIN
     { 
    sql_statement | statement_block 
     } 
END

Argumente

  • { sql_statement| statement_block }
    Eine beliebige gültige Transact-SQL-Anweisung oder -Anweisungsgruppierung, die mithilfe eines Anweisungsblockes definiert ist.

Hinweise

BEGIN...END-Blöcke können geschachtelt werden.

Obwohl sämtliche Transact-SQL-Anweisungen in einem BEGIN...END-Block gültig sind, sollten bestimmte Transact-SQL-Anweisungen nicht in demselben Batch oder Anweisungsblock gruppiert werden.

Beispiele

Im folgenden Beispiel wird durch BEGIN und END eine Reihe von Transact-SQL-Anweisungen definiert, die gemeinsam ausgeführt werden. Wäre der BEGIN...END-Block nicht vorhanden, würden beide ROLLBACK TRANSACTION-Anweisungen ausgeführt, und beide PRINT-Meldungen würden zurückgegeben.

USE AdventureWorks2012;
GO
BEGIN TRANSACTION;
GO
IF @@TRANCOUNT = 0
BEGIN
    SELECT FirstName, MiddleName 
    FROM Person.Person 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 transaction.
*/

Siehe auch

Verweis

ALTER TRIGGER (Transact-SQL)

Ablaufsteuerungssprache (Transact-SQL)

CREATE TRIGGER (Transact-SQL)

END (BEGIN...END) (Transact-SQL)