목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

표기 규칙

문제

솔루션

관련 정보

소개

이 문서에서는 Route_Call_Detail에 대한 DateTime별 SQL 쿼리 결과 순서와 Microsoft SQL 버전 6.5와 7.0 간의 Termination_Call_Detail 테이블이 다른 이유를 설명하고 Cisco ICM(Intelligent Contact Management) 환경에서 해결 방법을 제공합니다.

사전 요구 사항

요구 사항

Cisco에서는 다음 주제에 대해 알고 있는 것이 좋습니다.

- Cisco ICM

- Microsoft SQL

사용되는 구성 요소

이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.

- Cisco ICM

- Microsoft SQL Server 버전 6.5 및 7.0

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.

표기 규칙

문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참고하십시오.

문제

Cisco ICM 버전 4.6.2 이상으로 업그레이드하면 Microsoft SQL Server 버전 6.5가 버전 7로 업그레이드됩니다. 업그레이드 후 SQL 버전 7을 실행하는 ICM 시스템에서 Route_Call_Detail 또는 Termination_Call_Detail 테이블에 대해 SQL 쿼리를 실행하면 SQL 버전 6.5의 다른 결과가 반환됩니다. 이 SQL 쿼리:

그림 1:Microsoft SQL Server 쿼리

SQL 버전 6.5를 실행하는 이전 ICM 시스템에서 동일한 SQL 쿼리를 실행한 결과를 비교할 때 내용이 동일합니다.그러나 새 결과는 원래 결과와 같은 오름차순 DateTime 순서가 아닙니다.업그레이드 전에 이 쿼리는 DateTime 순서로 데이터를 반환했습니다.업그레이드 이후 데이터는 여기와 같이 DateTime 순서대로 반환되지 않습니다.

그림 2:DateTime 주문의 SQL 쿼리 결과

솔루션

SQL 버전 6.5에서 버전 7.0으로 업그레이드한 후 Route_Call_Detail 또는 Termination_Call_Detail에 대해 완료된 선택 쿼리 결과가 DateTime 순서에 더 이상 없습니다.DateTime 결과를 얻으려면 by 절을 삽입해야 합니다.이 문제는 order by 절이 Route_Call_Detail 및 Termination_Call_Detail 쿼리에 상당한 오버헤드를 추가할 수 있기 때문에 발생합니다. 이 쿼리는 매우 큰 결과 집합을 생성할 수 있습니다.

SQL Server 버전 6.5의 기본 키별 순서는 Microsoft SQL이 시작된 이전 Sybase 시스템에서 가져온 것입니다.Microsoft는 SQL Server 버전 7.0의 SQL 표준 준수를 강화했습니다. 이 경우 SQL 쿼리의 order by 절 없이 주문을 보장하지 않습니다.물리적 순차적 파일이 아닌 관계형 데이터베이스입니다.물리적 순차 파일이 있는 것처럼 관계형 데이터베이스에는 가정된 시퀀스가 없습니다.따라서 결과에서 시퀀스를 설정하려면 order by 절을 사용해야 합니다.

참고: 이것은 Cisco 문제가 아닙니다.Microsoft SQL Server 표준 문제입니다.

관련 정보

- 기술 지원 및 문서 − Cisco Systems