mssql 데이터베이스 커서 대량 수정 조건 기록 에 부합 하 는 방법
DECLARE @Id varchar(50)
DECLARE My_Cursor CURSOR --
FOR (SELECT Id FROM dbo.kinpanAwardProject where session=9) --
OPEN My_Cursor; --
FETCH NEXT FROM My_Cursor INTO @Id; -- ( Id @Id )
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT @Id; -- (Id)
UPDATE dbo.kinpanAwardProject SET ProTicketCount = cast( floor(rand()*30) as int)+40 WHERE Id = @Id; -- , 。
FETCH NEXT FROM My_Cursor INTO @Id; -- ( Id @Id )
END
CLOSE My_Cursor; --
DEALLOCATE My_Cursor; --
GO
또 하나의 용법 이 있 습 니 다.더 좋 을 수 있 습 니 다.저 는 id 에 대한 판단 이 필요 하지 않 으 면 수정 할 때 where 조회 가 필요 하지 않 고 커서 의 현재 위 치 를 직접 수정 하 는 것 이 더 빠 를 것 이 라 고 생각 합 니 다
DECLARE My_Cursor CURSOR --
FOR (SELECT * FROM dbo.MemberAccount) --
OPEN My_Cursor; --
FETCH NEXT FROM My_Cursor ; --
WHILE @@FETCH_STATUS = 0
BEGIN
--UPDATE dbo.MemberAccount SET UserName = UserName + 'A' WHERE CURRENT OF My_Cursor; --
--DELETE FROM dbo.MemberAccount WHERE CURRENT OF My_Cursor; --
FETCH NEXT FROM My_Cursor; --
END
CLOSE My_Cursor; --
DEALLOCATE My_Cursor; --
GO
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
SQL-빠른 팁 #12 - 사용 가능한 디스크 공간이것은 제가 1년 동안 축적한 일련의 빠른 팁과 요령 중 일부이며 다른 사람들에게 유용할 수 있다고 생각합니다. 비슷한 짧은 팁과 요령이 있으면 의견을 남겨주세요. 사용 가능한 디스크 공간 데이터베이스 서버의 디스크...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.