Utilisation de IF...ELSE

L'instruction IF permet de vérifier si une condition est remplie ou non. Le contrôle de flux qui en résulte varie selon que l'instruction facultative ELSE est spécifiée ou non :

  • IF spécifié sans ELSE
    Si l'instruction IF prend la valeur TRUE, l'instruction ou le bloc d'instructions qui suivent l'instruction IF sont exécutés. Si l'instruction IF prend la valeur FALSE, l'instruction ou le bloc d'instructions qui suivent l'instruction IF sont ignorés.
  • IF spécifié avec ELSE
    Si l'instruction IF prend la valeur TRUE, l'instruction ou le bloc d'instructions qui suivent l'instruction IF sont exécutés. La commande passe ensuite au point situé juste après l'instruction ou le bloc d'instructions qui suivent l'instruction ELSE. Si l'instruction IF prend la valeur FALSE, l'instruction ou le bloc d'instructions qui suivent l'instruction IF ne sont pas exécutés et l'instruction ou le bloc d'instructions qui suivent l'instruction facultative ELSE sont exécutés.

Par exemple, si une procédure stockée a enregistré les codes d'erreur retournés par @@ERROR au cours d'une transaction, elle peut comporter en fin de procédure une instruction IF identique à celle-ci :

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

Voir aussi

Autres ressources

ELSE (IF...ELSE) (Transact-SQL)
IF...ELSE (Transact-SQL)

Aide et Informations

Assistance sur SQL Server 2005