MSSQL CURSOR

차차·2021년 12월 9일
0

SQL

목록 보기
1/1
--변수 선언 조회한 컬럼을 담을 변수를 선언해야 한다 
DECLARE @P_NAME VARCHAR(100) 
DECLARE @P_AGE INT
DECLARE @P_SEX VARCHAR(10)

--커서 선언 
DECLARE SOCCER_CURSOR CURSOR FOR 
SELECT NAME ,AGE ,SEX 
FROM SOCCER_PLAYER


--커서가 질의 결과의 첫번째 튜플을 포인트 하도록 함 
OPEN SOCCER_CURSOR 

--질의 결과의 튜플들 중 현재의 다음 튜플로 커서를 이동시키는 명령 셀렉트 한 값을 변수에 넣는다 
FETCH NEXT FROM SOCCER_CURSOR INTO @P_NAME,@P_AGE, @P_SEX

--커서를 이용해 한 ROW 씩 읽는다 
WHILE @@FETCH_STATUS = 0 BEGIN --반복 작업 수행 
PRINT('이름: ' + @P_NAME) -- 이 안에서 원하는 로직을 돌린다 
 
SET @P_AGE = @P_AGE +1; --AGE 에 1 씩 더해준다 

UPDATE SOCCER_PLAYER 
SET AGE = @P_AGE
WHERE NAME = @P_NAME


--다음 ROW로 이동 
FETCH NEXT FROM SOCCER_CURSOR INTO @P_NAME,@P_AGE, @P_SEX 
END

-- 질의 수행 결과에 대한 처리 종료 시 커서를 닫기 위해 사용하는 명령어 
CLOSE SOCCER_CURSOR
DEALLOCATE SOCCER_CURSOR
profile
개발하는 돌멩이🙄🙄👻

0개의 댓글