none
쿼리 실행계획 캐싱 관련 문의 RRS feed

  • 질문

  • 안녕하세요.

    C# ADO.NET 을 사용하여 응용프로그램을 개발하고 있습니다.

    파라미터 방식을 사용하여 SQL Server 2014에 쿼리문을 요청하고 있는데요.

    이때 파라미터의 길이가 달라지면 다른 실행계획이 생성되네요.

    ex) SELECT 사원번호, 사원명 FROM 사원 WHERE 사원번호 = @사원번호

    @사원번호  -> '12345', '54321' 일 경우 동일한 플랜 실행

    @사원번호  -> '12345', '1234' 일 경우 다른 플랜 실행

    이때 응용프로그램에서 명시적으로 파라미터 사이즈를 설정해주면 동일한 플랜으로 실행되는데요.

    (위 예제에서 파라미터 사이즈를 5로 명시하면 '12345', '1234' 모두 동일한 플랜으로 실행)

    응용프로그램에서 파라미터 사이즈를 명시하는것 외에, 데이터베이스 설정으로 파라미터 사이즈와 상관없이 동일한 플랜을 타게 할 수 있을까요?

    2017년 8월 9일 수요일 오전 8:33