sqlserver 커서 사용 절차 예제(커서 를 만 들 고 커서 를 닫 습 니 다)

2242 단어 sqlserver유표
커서(cursor)는 DBMS 서버 에 저 장 된 데이터베이스 조회 로 SELECT 문구 가 아니 라 이 문구 에 의 해 검 색 된 결과 집합 입 니 다.커서 를 저장 한 후에 프로그램 은 필요 에 따라 데 이 터 를 스크롤 하거나 탐색 할 수 있 습 니 다.
커서 사용
커서 사용 단계:
커서 를 사용 하기 전에 설명(정의)을 해 야 합 니 다.이 과정 은 실제 검색 데이터 가 없습니다.사용 할 SELECT 구문 과 커서 옵션 만 정의 합 니 다.일단 성명 이 나 오 면,사용 할 수 있 도록 커서 를 열 어야 한다.이 과정 은 앞에서 정 의 된 SELECT 문구 로 데 이 터 를 실제 검색 합 니 다.데이터 가 적 힌 커서 는 필요 에 따라 각 줄 을 꺼 냅 니 다.커서 사용 을 끝 낼 때 커서 를 닫 아야 합 니 다.가능 하 다 면 커서 를 풀 어야 합 니 다(구체 적 인 DBMS 에 의존 합 니 다).커서 를 설명 한 후 필요 에 따라 자주 커서 를 열 고 닫 을 수 있 습 니 다.커서 가 열 렸 을 때 필요 에 따라 추출 작업 을 자주 수행 할 수 있 습 니 다. 
커서 만 들 기
SQL Server 에서 DECLARE 이름 의 커서 를 사용 하고 해당 하 는 SELECT 문 구 를 정의 합 니 다.필요 에 따라 WHERE 와 다른 절 을 가 져 옵 니 다.예 를 들 어 다음 과 같 습 니 다

DECLARE CustCursor CURSOR
FOR
SELECT * FROM Customers
WHERE cust_email IS NULL
커서 사용
OPEN CURSOR 문 구 를 사용 하여 커서 를 열 고 FETCH 문 구 를 사용 하여 커서 데 이 터 를 방문 하 였 습 니 다.FETCH 는 어떤 줄 을 검색 하고 어디서 검색 하 며 어디 에 두 어야 하 는 지 알려 줍 니 다(예 를 들 어 변수 이름).다음은 SQL Server 에서 커서 를 사용 하 는 예제 입 니 다.

DECLARE @cust_id CHAR(10),
@cust_name CHAR(50),
@cust_address CHAR(50),
@cust_city CHAR(50),
@cust_state CHAR(5),
@cust_zip CHAR(10),
@cust_country CHAR(50),
@cust_contact CHAR(50),
@cust_email CHAR(255)
OPEN CustCursor
FETCH NEXT FROM CustCursor
INTO @cust_id, @cust_name, @cust_address,
@cust_city, @cust_state, @cust_zip,
@cust_country, @cust_contact, @cust_email
WHILE @@FETCH_STATUS = 0
BEGIN

FETCH NEXT FROM CustCursor
INTO @cust_id, @cust_name, @cust_address,
@cust_city, @cust_state, @cust_zip,
@cust_country, @cust_contact, @cust_email
...
END
CLOSE CustCursor

이 예 에서 검색 한 열 마다 변 수 를 설명 하고 FETCH 문 구 는 한 줄 을 검색 하여 이 변수 에 값 을 저장 합 니 다.WHILE 를 사용 하여 줄 마다 반복 처리,조건 WHILE@@FETCHSTATUS=0 더 많은 줄 을 찾 을 수 없 을 때 처리 종료(순환 종료).이 예 는 구체 적 인 처 리 를 하지 않 습 니 다.실제 코드 에 서 는 구체 적 인 처리 코드 로 그 중의...자리 표시 자 를 교체 해 야 합 니 다.
커서 닫 기
SQL Server 에서 커서 닫 기:

CLOSE CustCursor
DEALLOCATE CURSOR CustCursor
CLOSE 문 구 는 커서 를 닫 는 데 사 용 됩 니 다.커서 가 닫 히 면 다시 열지 않 으 면 사용 할 수 없습니다.두 번 째 로 사용 할 때 는 더 이상 설명 할 필요 가 없고 OPEN 으로 열 면 됩 니 다.

좋은 웹페이지 즐겨찾기