Utilizzo di IF...ELSE

L'istruzione IF consente di testare una condizione. Il flusso di controllo risultante varia a seconda che l'istruzione facoltativa ELSE sia stata o meno specificata:

  • IF senza ELSE

    Se l'istruzione IF restituisce TRUE, l'istruzione o il blocco di istruzioni che seguono IF vengono eseguite. Se invece IF restituisce FALSE, l'istruzione o il blocco di istruzioni che seguono IF vengono ignorate.

  • IF con ELSE

    Se l'istruzione IF restituisce TRUE, l'istruzione o il blocco di istruzioni che seguono IF vengono eseguite. Il controllo passa quindi al punto che segue l'istruzione o il blocco di istruzioni dopo l'istruzione ELSE. Se invece IF restituisce FALSE, l'istruzione o il blocco di istruzioni che seguono IF vengono ignorate e viene eseguita l'istruzione o il blocco di istruzioni che segue l'istruzione facoltativa ELSE.

Ad esempio, una stored procedure che ha salvato tutti i codici di errore restituiti da @@ERROR durante una transazione, potrebbe includere come istruzione finale un'istruzione IF simile alla seguente:

IF (@ErrorSaveVariable <> 0)
BEGIN
   PRINT 'Errors encountered, rolling back.'
   PRINT 'Last error encountered: ' +
      CAST(@ErrorSaveVariable AS VARCHAR(10))
   ROLLBACK
END
ELSE
BEGIN
   PRINT 'No Errors encountered, committing.'
   COMMIT
END
RETURN @ErrorSaveVariable

Per ulteriori esempi, vedere ELSE (IF...ELSE) (Transact-SQL).

Vedere anche

Riferimento