目次

はじめに

前提条件

要件

使用するコンポーネント

表記法

問題

解決策

関連情報

はじめに

このドキュメントでは、Microsoft SQL バージョン 6.5 と 7.0 の間で、Route_Call_Detail または Termination_Call_Detail テーブルに対する DateTime 別の SQL クエリの結果の順序が異なる理由について説明し、Cisco Intelligent Contact Management（ICM）環境での回避策を紹介します。

前提条件

要件

次の項目に関する知識があることを推奨しています。

- Cisco ICM

- Microsoft SQL

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づくものです。

- Cisco ICM

- Microsoft SQL Server バージョン 6.5 および 7.0

本書の情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。 このドキュメントで使用するすべてのデバイスは、初期（デフォルト）設定の状態から起動しています。 稼働中のネットワークで作業を行う場合、コマンドの影響について十分に理解したうえで作業してください。

表記法

ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

問題

Cisco ICM にバージョン 4.6.2 または それ 以降をアップグレードするとき、Microsoft SQL Server バージョン 6.5 はバージョン 7 にアップグレードされます。 Route_Call_Detail に対して SQL クエリーか SQL バージョン 7 を実行する ICM システムの Termination_Call_Detail 表を実行するアップグレードが 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 結果を得るために挿入する必要があります。 これは句による順序が非常に大きい結果セットを生成できる Termination_Call_Detail クエリ追加できるので問題ですおよび Route_Call_Detail に重要なオーバーヘッドを。

SQL サーバ バージョン 6.5 の基本キーによる順序は Microsoft SQL が起きた Sybase 古いシステムから来ました。 Microsoft は SQL クエリーの節によって順序なしでは順序を保証しない SQL サーバ バージョン 7.0 の SQL 規格に一致をきつく締めました。 これはリレーショナル データベースない物理的 な順次ファイルです。 物理的 な順次ファイルにあるようにリレーショナル データベースに仮定されたシーケンスがありません。 従って、句によって順序を結果でシーケンスを確立するのに使用することは必要です。

注: これは Cisco 問題ではないです。 それは Microsoft SQL Server 規格問題です。

関連情報

- テクニカル サポートとドキュメント – Cisco Systems