Share via


Usando IF... ELSE

A instrução IF é usada para testar uma condição. O fluxo de controle resultante depende de a instrução ELSE opcional ser especificada:

  • IF especificada sem ELSE

    Quando a instrução IF é avaliada como TRUE, a instrução ou o bloco de instruções que se segue à instrução IF é executado. Quando a instrução IF é avaliada como FALSE, a instrução ou o bloco de instruções que se segue à instrução IF é ignorado.

  • IF especificada com ELSE

    Quando a instrução IF é avaliada como TRUE, a instrução ou o bloco de instruções que se segue à instrução IF é executado. O controle, assim, salta para o ponto seguinte à instrução ou ao bloco de instruções que se segue à instrução ELSE. Quando a instrução IF é avaliada como FALSE, a instrução ou o bloco de instruções que se segue à instrução IF é ignorado, e a instrução ou o bloco de instruções que se segue à instrução opcional ELSE é executado.

Por exemplo, se um procedimento armazenado tiver salvado quaisquer códigos de erro retornados por @@ERROR durante uma transação, o procedimento poderá ter uma instrução IF semelhante à que se segue ao final do procedimento:

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

Para ver mais exemplos, consulte ELSE (IF...ELSE) (Transact-SQL).

Consulte também

Referência