728x90
테이블의 Row 를 순서대로 하나씩 읽어가면서 데이터 처리를 가능하게 한다.
.net 에 foreach 문이라고 이해하면 쉬울듯
사용방법은..
DECLARE testCur CURSOR FOR -- 커서정의
SELECT ID,NAME FROM TEST_JUN -- 반복해서 돌릴데이터
OPEN testCur -- 커서 열기
DECLARE @id varchar(50) -- ID 저장변수
DECLARE @name varchar(50) -- NAME 저장변수
FETCH NEXT FROM testCur INTO @id,@name -- 값 대입
WHILE(@@FETCH_STATUS=0) -- 행이 없을때까지 반복
BEGIN
PRINT @id + ' : ' + @name
FETCH NEXT FROM testCur INTO @id,@name -- 다음행값을 대입
END
CLOSE testCur -- 커서닫기
DEALLOCATE testCur -- 커서 해재
위 결과는 아래와 같다. 테이블의 id, name 모든데이터가 출력
21 : 강준22
22 : 강준23
23 : 강준100
24 : 강준101
25 : 강준102
26 : 강준103
27 : 강준104
28 : 강준105
29 : 강준106
3 : 강준4
30 : 강준107
31 : 강준108
32 : 강준109
33 : 강준110
34 : 강준111
728x90
'DB' 카테고리의 다른 글
(MSSQL) COMMIT WORK, ROLLBACK WORK (0) | 2017.04.13 |
---|---|
(MSSQL) 암시적 트랜잭션(Implicit Transaction) (0) | 2017.04.13 |
(MSSQL) 저장 프로시저의 이름과 내용 조회 하기 (0) | 2017.04.13 |
(MSSQL) SET STATISTICS TIME ON (처리시간 나타내기) (0) | 2017.04.13 |
(MSSQL) 커서(CURSOR) - STATIC,DYNAMIC,KEYSET (0) | 2017.04.13 |