5.1.9 GetFrontCandidate 저장 프로시저
CandidateTable의 맨 앞에 있는 요소 정보를 얻어오는 저장 프로시저를 만듭시다. 저장 프로시저 이름은 GetFrontCandidate로 결정할게요.
인자는 OUTPUT 유형으로 수집 후보 페이지 주소와 Seed 사이트에서의 상대적 깊이를 선언합니다. 그리고 수집 후보 대상이 없을 수도 있으니 이를 확인하는 인자도 선언합니다.
CREATE PROCEDURE dbo.GetFrontCandidate
(
@Url varchar(200) OUTPUT,
@Depth int OUTPUT,
@Getted int OUTPUT
)
먼저 CandidateTable에 항목 개수를 얻어옵니다. 항목 개수를 얻어오기 위해 변수 선언이 필요하고 GetCountCandidate 저장 프로시저를 실행합니다.
Declare @ElemCount int
Exec GetCountCandidate @ElemCount OUTPUT
만약 항목 개수가 0이면 Getted 변수 값을 0으로 설정합니다.
if @ElemCount = 0 begin
set @Getted = 0
end
항목 개수가 0이 아니면 일련 번호의 최소값을 얻어온 후에 해당 항목의 정보를 얻어옵니다. 그리고 해당 항목을 CandidateTable에서 제거합니다. 일련 번호를 기억할 변수 선언도 필요합니다.
Declare @SeqNo int
else begin
Exec GetMinSeqNo @SeqNo OUTPUT
Exec GetCandidateBySeqNo @SeqNo, @Url OUTPUT, @Depth OUTPUT
Exec RemoveCandidate @SeqNo
set @Getted = 1
end
▷ GetFrontCandidate 저장 프로시저
CREATE PROCEDURE dbo.GetFrontCandidate ( @Url varchar(200) OUTPUT, @Depth int OUTPUT, @Getted int OUTPUT ) AS Declare @ElemCount int Declare @SeqNo int
Exec GetCountCandidate @ElemCount OUTPUT
if @ElemCount = 0 begin set @Getted = 0 end else begin Exec GetMinSeqNo @SeqNo OUTPUT Exec GetCandidateBySeqNo @SeqNo, @Url OUTPUT, @Depth OUTPUT Exec RemoveCandidate @SeqNo set @Getted = 1 end RETURN |
'프로그래밍 기술 > 웹 검색 엔진 만들기' 카테고리의 다른 글
5.1.14 ExistedMorpheme 저장 프로시저 (0) | 2017.12.06 |
---|---|
5.1.13 AddMCPostedUrlInfo 저장 프로시저 (0) | 2017.12.06 |
5.1.12 AddPostedUrl 저장 프로시저 (0) | 2017.12.06 |
5.1.11 InsertPostedUrl 저장 프로시저 (0) | 2017.12.06 |
5.1.10 UpdatePostedUrl 저장 프로시저 (0) | 2017.12.06 |
5.1.8 RemoveCandidate 저장 프로시저 (0) | 2017.12.06 |
5.1.7 GetCandidateBySeqNo 저장 프로시저 (0) | 2017.12.06 |
5.1.6 GetMinSeqNo 저장 프로시저 (0) | 2017.12.06 |
5.1.5 GetCountCandidate 저장 프로시저 (0) | 2017.12.06 |
5.1.4 AddCandidate 저장 프로시저 (0) | 2017.12.06 |