Microsoft SQL Server 2008 R2 SP1(서비스 팩 1) 또는 Microsoft SQL Server 2012 수정 프로그램이 하나의 다운로드 가능한 파일에 배포 됩니다. 수정 프로그램이 누적 되므로 새 릴리스에는 이전 SQL Server 2008 R2 SP1(서비스 팩 1) 또는 Microsoft SQL Server 2012 업데이트 릴리스에 포함 된 모든 핫픽스와 모든 보안 업데이트가 포함 되어 있습니다.
증상
다음과 같은 경우를 생각해 볼 수 있습니다.
-
Microsoft SQL Server 2005에서 Microsoft SQL server 2008 또는 microsoft sql server 2008 R2 또는 Microsoft sql Server 2012로 업그레이드 합니다.
-
Sp_cursoropen 저장 프로시저를 사용 하는 쿼리를 실행 한 다음 rowcount 매개 변수를 지정 하 여 표의 처음 몇 행을 페치합니다.
이 시나리오에서는 SQL Server 2005에서 동일한 쿼리를 실행 하는 것 보다 성능이 더 느릴 수 있습니다.
원인
이 문제는 쿼리 최적화 프로그램이 동적 커서 계획 대신 정적 커서 계획을 사용 하기 때문에 발생 합니다. 정적 커서 계획의 경우 SQL Server는 모든 행을 반입 하 고 커서 작업 테이블에 삽입 합니다. 그러나 동적 커서 계획의 경우 SQL Server는 필요한 행만 페치합니다.
해결 방법
누적 업데이트 정보
SQL Server 2012
이 문제에 대 한 픽스는 SQL Server 2012의 누적 업데이트 1에서 처음 릴리스 되었습니다. 이 누적 업데이트 패키지에 대 한 자세한 내용은 다음 문서 번호를 클릭 하 여 Microsoft 기술 자료 문서를 참조 하세요.
2679368 SQL Server 2012의 누적 업데이트 패키지 1참고 빌드가 누적 되므로 새로운 각 수정 릴리스에는 이전 SQL Server 2012 fix 릴리스에 포함 된 모든 핫픽스와 모든 보안 수정 사항이 포함 되어 있습니다. 이 핫픽스를 포함 하는 최신 픽스 릴리스를 적용 하는 것이 좋습니다. 자세한 내용을 확인하려면 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
2692828 SQL Server 2012이 출시 된 이후 출시 된 SQL Server 2012 빌드 Sql server 2012 설치에 SQL Server 2012 핫픽스를 적용 해야 합니다.
SQL Server 2008 R2 SP1 용 누적 업데이트 패키지 5
이 핫픽스를 적용 한 후에 추적 플래그 4199을 사용 하도록 설정 합니다. 이 문제에 대 한 픽스는 먼저 누적 업데이트 5에서 릴리스 되었습니다. SQL Server 2008 R2 SP1 용 누적 업데이트 패키지를 구하는 방법에 대 한 자세한 내용은 다음 문서 번호를 클릭 하 여 Microsoft 기술 자료 문서를 참조 하세요.
2659694 SQL Server 2008 R2 SP1 용 누적 업데이트 패키지 5참고 빌드가 누적 되므로 새로운 각 수정 릴리스에는 이전 SQL Server 2008 R2 SP1 fix 릴리스의 모든 핫픽스와 모든 보안 수정 사항이 포함 되어 있습니다. 이 핫픽스를 포함 하는 최신 픽스 릴리스를 적용 하는 것이 좋습니다. 자세한 내용을 확인하려면 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
2567616 SQL Server 2008 R2 SP1 이후 릴리스된 SQL Server 2008 R2 빌드가 릴리스 되었습니다.
해결 방법
이 문제를 해결 하려면 쿼리에 빠른 쿼리 힌트를 추가 합니다.
추가 정보
쿼리 힌트를 사용 하는 방법에 대 한 자세한 내용은 다음 MSDN 웹 사이트를 방문 하세요.
쿼리 힌트를 사용 하는 방법에 대 한 일반 정보추적 플래그 4199에 대 한 자세한 내용을 보려면 다음 웹 사이트를 방문 하세요.
상태
Microsoft는 "적용 대상" 절에 나열한 제품에서 이 문제를 확인했습니다.