IF...ELSE 사용

IF 문은 조건을 테스트할 때 사용됩니다. 제어 흐름 결과는 선택적 ELSE 문이 지정되었는지에 따라 달라집니다.

  • ELSE 없이 IF를 지정하는 경우
    IF 문이 TRUE로 평가되면 IF 문 다음에 오는 문 또는 문 블록이 실행됩니다. IF 문이 FALSE로 평가되면 IF 문 다음에 오는 문 또는 문 블록을 건너뛰게 됩니다.
  • ELSE와 함께 IF를 지정하는 경우
    IF 문이 TRUE로 평가되면 IF 문 다음에 오는 문 또는 문 블록이 실행됩니다. 그리고 ELSE 문 다음에 오는 문 또는 문 블록 뒤로 제어가 이동합니다. IF 문이 FALSE로 평가되면 IF 다음에 오는 문 또는 문 블록은 건너뛰게 되고 옵션인 ELSE 문 다음에 오는 문 또는 문 블록이 실행됩니다.

예를 들어 저장 프로시저가 트랜잭션 중에 @@ERROR에서 반환된 오류 코드를 저장하면 프로시저 끝에 다음과 비슷한 IF 문이 올 수 있습니다.

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

참고 항목

관련 자료

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

도움말 및 정보

SQL Server 2005 지원 받기