KB3138930-FIX: SQL Server에서 테이블 변수에 커서를 사용 하는 저장 프로시저를 실행할 때 액세스 위반이 발생 합니다.

증상

Microsoft SQL Server 2012 또는 SQL Server 2014의 테이블 변수에 커서를 사용 하는 저장 프로시저를 만든다고 가정 합니다. 또한 저장 프로시저는 커서와 함께 WHERE 문을 사용 하 여 테이블을 업데이트 합니다. 예를 들어 저장 프로시저는 다음과 같이 나타날 수 있습니다.

CREATE PROCEDURE dbo.usp_TestSP AS  BEGIN  DECLARE @TableVar TABLE (SomeInt INT NULL) INSERT @TableVar VALUES (NULL)  DECLARE @curInt INT, @newInt INT SET @newInt = 1  DECLARE ccc CURSOR LOCAL FOR SELECT SomeInt FROM @TableVar WHERE SomeInt IS NULL  OPEN ccc  FETCH NEXT FROM ccc INTO @curInt UPDATE @TableVar SET SomeInt = @newInt WHERE CURRENT OF cccCLOSE ccc  SELECT * FROM @TableVar END 

Sp_refreshsqlmodule 시스템 저장 프로시저를 사용 하 여 저장 프로시저를 실행 하면 액세스 위반이 발생할 수 있으며 다음과 유사한 오류 메시지가 나타날 수 있습니다.

메시지 596, 수준 21, 상태 1은 세션이 kill 상태에 있기 때문에 실행을 계속할 수 없습니다. 메시지 0, 수준 20, 상태 0A 현재 명령에서 심각한 오류가 발생 했습니다. 결과가 있으면 삭제 해야 합니다.

이 경우 다음과 유사한 오류도 SQL Server 오류 로그에 기록 됩니다.

날짜 시간. 730 spid51 SqlDumpExceptionHandler: 프로세스 51에서 치명적인 예외가 생성 되었습니다 c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server is terminating this process.date time.730 spid51 * *******************************************************************************date time.730 spid51 *date time.730 spid51 * BEGIN STACK DUMP:date time.730 spid51 * date time spid 51date time.730 spid51 *date time.730 spid51 *date time.730 spid51 * Exception Address = 00007FFC270236D5 Module(sqllang+00000000005036D5)date time.730 spid51 * Exception Code = c0000005 EXCEPTION_ACCESS_VIOLATIONdate time.730 spid51 * Access Violation occurred reading address 0000006F00620074date time.730 spid51 * Input Buffer 136 bytes -date time.730 spid51 * EXECUTE sp_refreshsqlmodule N'[dbo]. [usp_TestSP] ' 날짜 시간. 730 spid51 * date time. 730 spid51 *

해결 방법

누적 업데이트 정보

이 문제는 다음 업데이트에서 해결 되었습니다.

각각의 새로운 새 누적 업데이트에는 이전 누적 업데이트에 포함 된 모든 핫픽스와 모든 보안 수정 사항이 포함 되어 있습니다. SQL Server에 대 한 최신 누적 업데이트를 확인 하세요.

상태

Microsoft는 "적용 대상" 절에 나열한 제품에서 이 문제를 확인했습니다.

참조

Microsoft에서 소프트웨어 업데이트를 설명 하는 데 사용 하는 용어 에 대해 알아봅니다.

추가 도움이 필요하신가요?

기술 향상
교육 살펴보기
새로운 기능 우선 가져오기
Microsoft Insider 참가

이 정보가 유용한가요?

번역 품질에 얼마나 만족하시나요?

사용 경험에 어떠한 영향을 주었나요?

추가 피드백이 있으신가요? (선택 사항)

소중한 의견에 감사드립니다.

×