Dela via


GOTO (Transact-SQL)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-databas i Förhandsversion av Microsoft Fabric

Ändrar körningsflödet till en etikett. Den Transact-SQL-instruktionen eller -instruktionen som följer GOTO hoppas över och bearbetningen fortsätter på etiketten. GOTO-instruktioner och etiketter kan användas var som helst i ett procedur-, batch- eller instruktionsblock. GOTO-instruktioner kan kapslas.

Transact-SQL syntaxkonventioner

Syntax

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

Arguments

label
Är den punkt varefter bearbetningen startar om en GOTO är riktad mot den etiketten. Etiketter måste följa reglerna för identifierare. En etikett kan användas som en kommentarsmetod om GOTO används.

Remarks

GOTO kan finnas inom villkorsstyrda instruktioner för kontroll av flöde, instruktionsblock eller procedurer, men det kan inte gå till en etikett utanför batchen. GOTO-förgrening kan gå till en etikett som definierats före eller efter GOTO.

Permissions

GOTO-behörigheter är standard för alla giltiga användare.

Examples

I följande exempel visas hur du använder GOTO som en grenmekanism.

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

Kontroll av flödesspråk (Transact-SQL)
BEGIN...END (Transact-SQL)
BREAK (Transact-SQL)
CONTINUE (Transact-SQL)
IF...ELSE (Transact-SQL)
WAITFOR (Transact-SQL)
WHILE (Transact-SQL)