Microsoft로 로그인
로그인하거나 계정을 만듭니다.
안녕하세요.
다른 계정을 선택합니다.
계정이 여러 개 있음
로그인할 계정을 선택합니다.

증상

다음과 같은 경우를 생각해 볼 수 있습니다.

  • Microsoft SQL Server 2016에서 호환성 수준이 130으로 설정된 데이터베이스를 사용합니다.

  • 열 저장소 인덱스 및 행 저장소 인덱스 또는 힙에 액세스하고 필터 조건자(WHERE 절)를 포함하는 쿼리를 실행합니다.

이 시나리오에서는 SQL Server 필터 조건자를 데이터 원본 연산자(테이블 또는 인덱스 검색 또는 검색)에 더 가깝게 푸시할 수 없습니다. 이로 인해 최적이 아닐 수 있는 쿼리 성능이 발생할 수 있습니다.


또한 쿼리가 필터링된 데이터에 따라 정확도가 달라지는 식(예: 형식 변환)을 사용하는 경우(예: char 테이블 열이 int로 변환되지만 값의 하위 집합에 유효한 int 표현만 포함되고 이 하위 집합은 필터 조건자로 식별됨) 쿼리가 다음 중 하나와 유사한 데이터 변환 오류로 인해 실패할 수 있습니다.

varchar 값 '0.5
'를 데이터 형식 int로 변환할 때 Msg 245, 수준 16, 상태 1, 줄 20 변환이 실패했습니다.

Msg 8114, 수준 16, 상태 5, 줄 34
데이터 형식 varchar를 bigint로 변환하는 동안 오류가 발생했습니다.

해결 방법

이 문제는 SQL Server 2016 SP1의 SQL Server:

누적 업데이트 2에 대한 다음 누적 업데이트에서 해결되었습니다.       

참고 이 수정 사항이 적용되려면 쿼리 최적화 프로그램 핫픽스를 사용하도록 설정해야 합니다.

추적 플래그 4199, 데이터베이스 범위 구성 설정 QUERY_OPTIMIZER_HOTFIXES=ON(SQL Server 2016 이상에서 사용 가능) 또는 쿼리 옵션 'ENABLE_QUERY_OPTIMIZER_HOTFIXES'(SQL Server 2016 SP1 이상에서 사용 가능)을 USE_HINT 사용하여 쿼리 최적화 프로그램 핫픽스를 사용하도록 설정할 수 있습니다.

SQL Server 대한 각각의 새로운 누적 업데이트에는 이전 누적 업데이트에 포함된 모든 핫픽스 및 모든 보안 수정 사항이 포함됩니다. SQL Server 2016의 SQL Server:

최신 누적 업데이트에 대한 최신 누적 업데이트를 확인하세요.

상태

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

참고 자료

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

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?
제출을 누르면 피드백이 Microsoft 제품과 서비스를 개선하는 데 사용됩니다. IT 관리자는 이 데이터를 수집할 수 있습니다. 개인정보처리방침

의견 주셔서 감사합니다!

×