프로시져 그룹화 > db

본문 바로가기

db

프로시져 그룹화

페이지 정보

작성자 서방님 댓글 0건 조회 15회 작성일 07-10-16 15:58

본문

많은 분들이 아시고 계시겠지만, 혹시 모르시는 분을 위해서

이렇게 사용되는 가 그렇게 빈번하게 발생하지는 않지만 (저만그런가..?^^;;)
간혹 유용하게 사용될 경우가 있습니다.

예를 들어 pubs에 jobs라는 table이 있습니다.
이 table에 조회를 다양하게 하기 위해서 여러 개의 sp를 작성합니다.
(물론 한 SP에서 다 처리 가능 하지만 예들 든 것이니 만큼 이해를..)

job_id에 하나에 대해서만 조회를 해오는 sp를 작성합니다.

Create proc pu_job
 @job_id int
AS
 SELECT * FROM dbo.jobs WHERE [email protected]_id

그리고 min_lvl에 대해서 범위로 조회를 하는 SP를 작성합니다.
Create proc pu_job;1
 @min_max int,
 @min_min int
AS
 SELECT * FROM dbo.jobs
WHERE min_lvl <= @min_max and min_lvl >= @min_min

또 min_lvl에 대해서 범위로 조회를 하는 SP를 작성합니다.
Create proc pu_job;2
 @max_max int,
 @max_min int
AS
 SELECT * FROM dbo.jobs
WHERE max_lvl <= @max_max and max_lvl >= @max_min

사용 방법은 EXEC pu_job;2, pu_job;1 입니다.
위와 같이 그룹으로 sp를 작성해 놓고 만약 job table이 삭제 되었을 때
관련 sp를 같이 삭제를 해주고 싶다거나 한다면
Drop proc pu_job 이런 식으로 하면 pu_job으로 그룹이 지정된 sp는 모두 삭제가 됩니다.

꼭 이런 경우만 아니더라도 여러 경우에 적용하여 사용할 수 있을 것 같습니다.
도움이 되시길.

댓글목록

등록된 댓글이 없습니다.

Total 447건 1 페이지
게시물 검색

회원로그인

접속자집계

오늘
360
어제
457
최대
592
전체
39,969

그누보드5
Copyright © seobangnim.com All rights reserved.
자바스크립트를 활성화 하세요![ 브라우저에서 자바스크립트를 활성화하는 방법 ]