U MS SQL Server-u naredbe za kontrolu toka omogućavaju donošenje odluka, ponavljanje naredbi i upravljanje izvršavanjem SQL koda. One imaju sličnu ulogu kao kontrolne strukture u programskim jezicima.

Najvažnije naredbe za kontrolu toka u SQL Server 2008 su:


1. IF

Koristi se za proveru uslova.

Sintaksa

IF uslov
BEGIN
    naredbe
END

Primer

DECLARE @broj INT;
SET @broj = 10;

IF @broj > 5
BEGIN
    PRINT 'Broj je veci od 5';
END

2. IF...ELSE

Omogućava izvršavanje jedne grupe naredbi ako je uslov tačan, a druge ako nije.

Primer

DECLARE @godina INT;
SET @godina = 2025;

IF @godina > 2020
BEGIN
    PRINT 'Nova godina';
END
ELSE
BEGIN
    PRINT 'Stara godina';
END

3. WHILE

Koristi se za ponavljanje naredbi dok je uslov tačan.

Primer

DECLARE @i INT;
SET @i = 1;

WHILE @i <= 5
BEGIN
    PRINT @i;

    SET @i = @i + 1;
END

4. BREAK

Prekida izvršavanje WHILE petlje.

Primer

DECLARE @i INT;
SET @i = 1;

WHILE @i <= 10
BEGIN
    IF @i = 5
        BREAK;

    PRINT @i;

    SET @i = @i + 1;
END

5. CONTINUE

Preskače ostatak trenutne iteracije i prelazi na sledeću.

Primer

DECLARE @i INT;
SET @i = 0;

WHILE @i < 5
BEGIN
    SET @i = @i + 1;

    IF @i = 3
        CONTINUE;

    PRINT @i;
END

6. GOTO

Prebacuje izvršavanje na označenu lokaciju (labelu).

Primer

DECLARE @broj INT;
SET @broj = 1;

ponovo:

PRINT @broj;

SET @broj = @broj + 1;

IF @broj <= 3
    GOTO ponovo;

7. RETURN

Prekida izvršavanje procedure ili funkcije.

Primer

CREATE PROCEDURE sp_Test
AS
BEGIN
    PRINT 'Pocetak';

    RETURN;

    PRINT 'Ovo se ne izvrsava';
END

8. WAITFOR

Pauzira izvršavanje određeno vreme.

Primer

WAITFOR DELAY '00:00:05';

PRINT 'Proslo je 5 sekundi';

9. TRY...CATCH

Koristi se za obradu grešaka.

Primer

BEGIN TRY
    SELECT 10 / 0;
END TRY

BEGIN CATCH
    PRINT 'Doslo je do greske';
END CATCH

Najvažnije za učenike 3. razreda

U praksi, za nivo srednje škole najčešće se koriste:

  • IF

  • IF ELSE

  • WHILE

  • BREAK

  • CONTINUE

Dok su:

  • GOTO

  • RETURN

  • TRY CATCH

  • WAITFOR

više napredne naredbe koje je dovoljno upoznati konceptualno.


Podela naredbi za kontrolu toka

Naredba Namena
IF Grananje
IF ELSE Dvostruko grananje
WHILE Ponavljanje
BREAK Prekid petlje
CONTINUE Preskok iteracije
GOTO Skok na labelu
RETURN Prekid procedure/funkcije
TRY CATCH Obrada grešaka
WAITFOR Pauza izvršavanja

Last modified: Wednesday, 13 May 2026, 8:34 AM