SQL Server 2008에서 실행되는 저장 프로 시저가 한 번에 하나씩 레코드를 삭제하면서 약 5 천만 행의 테이블을 반복합니다 (하루 약 25,000 레코드). 프로세스가 print 문을 통해 메시지 창으로 실행될 때이 문제를 볼 수 있기를 원합니다. 하루의 삭제 가치가 커질 때마다 메시지를 볼 수 있기를 바랍니다. 이런 식으로 할 수있는 방법이 있습니까? 절차는 다음과 같이 대략적으로 배열됩니다 :Sql 서버는 while 루프 중에 영향을받은 행을 인쇄합니다.
WHILE EXISTS(<query statement>)
BEGIN
BEGIN TRAN
DELETE
FROM <table>
WHERE <condition>
AND <condition>
--need some sort of "rows affected" statement here
COMMIT
END
반복하는 이런 일을 할 수있는,하지만 난 여전히 각 배치 중 삭제에 의해 영향을받는 행의 수를 잡아하는 방법을 아주 확실하지 않다. 그것에 관한 어떤 생각? – Kevin
@ 케빈 - 내 업데이트 참조 :) – AdaTheDev
고마워! 이 작동합니다 :) – Kevin