2011-04-29 2 views
1

SQL 작업 단계 (SQL Server 2005)에서 저장 프로 시저를 실행하려고합니다.
나는 실행중인 저장 프로 시저의 결과 집합이 비어 있지 않으면 오류를 발생시키고 작업 단계를 실패하려고합니다.SQL - 선택 결과 집합이 비어있는 경우 Sproc에서 오류 발생

내 저장 프로 시저의 기능은 다음과 같습니다. - 현재 날짜가 테이블 열 중 하나의 날짜와 같은 경우 행이 표시되는 select 문이 있습니다.

SELECT 
Holiday_date 
from tblHolidays 
where 
CONVERT(VARCHAR(10),GETDATE(),101) = CONVERT(VARCHAR(10),Holiday_date,101) 

결과 세트가 비어 있으면 작업 단계를 완료하고 다음 작업 단계로 진행하고 싶습니다.

이 작업을 수행하는 방법에 대한 의견.

감사

답변

1

당신이 그것을 경고 severity levels 중 하나를 시도 않을 경우 전체 작업이 실패하게됩니다 만약 내가 기억할 수없는 RAISERROR althought을 시도 할 수 있습니다.

IF @@ROWCOUNT > 0 
    RAISERROR ('found data', 16, 1) 
+0

은'될 것 IF @@ ROWCOUNT <= 0' - ** ** –

+0

아예 비어 있지만, 기록 거기 * 때 오류를 원하는대로 연산을 읽을 결과가 설정 한 오류가 발생 . –

+0

Alex가 맞습니다. 레코드가있을 때 오류가 발생합니다. – svon

관련 문제