Delen via


GOTO (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-database in Microsoft Fabric Preview

Hiermee wijzigt u de uitvoeringsstroom in een label. De Transact-SQL instructie of instructies die volgen op GOTO worden overgeslagen en de verwerking wordt voortgezet op het label. GOTO-instructies en -labels kunnen overal binnen een procedure, batch of instructieblok worden gebruikt. GOTO-instructies kunnen worden genest.

Transact-SQL syntaxis-conventies

Syntax

  
Define the label:   
label:   
Alter the execution:  
GOTO label   

Arguments

label
Is het punt waarna de verwerking begint als een GOTO op dat label is gericht. Labels moeten de regels voor id's volgen. Een label kan worden gebruikt als commentaarmethode of GOTO wordt gebruikt.

Remarks

GOTO kan bestaan binnen voorwaardelijke controle-of-stroominstructies, instructieblokken of procedures, maar kan niet naar een label buiten de batch gaan. GOTO-vertakkingen kunnen naar een label gaan dat is gedefinieerd voor of na GOTO.

Permissions

GOTO-machtigingen zijn standaard ingesteld op elke geldige gebruiker.

Examples

In het volgende voorbeeld ziet u hoe u dit kunt gebruiken GOTO als vertakkingsmechanisme.

DECLARE @Counter int;  
SET @Counter = 1;  
WHILE @Counter < 10  
BEGIN   
    SELECT @Counter  
    SET @Counter = @Counter + 1  
    IF @Counter = 4 GOTO Branch_One --Jumps to the first branch.  
    IF @Counter = 5 GOTO Branch_Two  --This will never execute.  
END  
Branch_One:  
    SELECT 'Jumping To Branch One.'  
    GOTO Branch_Three; --This will prevent Branch_Two from executing.  
Branch_Two:  
    SELECT 'Jumping To Branch Two.'  
Branch_Three:  
    SELECT 'Jumping To Branch Three.';  

See Also

Control-of-Flow Language (Transact-SQL)
BEGIN...END (Transact-SQL)
BREAK (Transact-SQL)
CONTINUE (Transact-SQL)
IF...ELSE (Transact-SQL)
WAITFOR (Transact-SQL)
WHILE (Transact-SQL)