このドキュメントでは、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 規格問題です。