現象
次のような状況を考えます。
-
Microsoft SQL Server 分析サービス (SSAS)、SQL Server データ ソースと、IBM DB2 データ ソースを含むデータ ソース ビューを作成するとします。
-
リモート 64 ビット SQL Server システムには、SQL Server データ ソースがあります。
-
Microsoft OLE DB プロバイダー DB2 4.0 のリモート SQL Server のインスタンスにインストールされているし、システム データ ソースのビューを作成します。
このシナリオでは、データ ソース ビューを使用するクエリ ステートメントは次のようなエラー メッセージが失敗します。
クラスが登録されていません
原因
4.0 の DB2 用 OLE DB プロバイダーは、64 ビット プロセスには、プロバイダーが読み込まれたとき、プロバイダーと DB2OLEDB の ProgID の値を 32 ビット プロセスがロード時に DB2OLEDB.1 の ProgID の値を使用します。このシナリオでは、SQL Server のデザイナーは、32 ビット プロセスとして実行されます。したがって、リモートの SQL Server システムに、DB2OLEDB.1 を渡します。DB2OLEDB として 4.0 の DB2 用 OLE DB プロバイダーが登録されているために、64 ビットの SQL Server プロセスは、DB2OLEDB.1 クラスを検索できません。4.0 の DB2 用 OLE DB プロバイダーが見つからないためにエラーが発生するクエリをこのような場合に発生します。
解決策
修正プログラムの情報
サポートされている修正プログラムは、マイクロソフトから入手可能です。ただし、この修正プログラムは、ここで説明する問題のみを修正することを目的としたものです。この修正プログラムは、この資料に記載された問題があったシステムのみに対して適用してください。この修正プログラムは、今後さらにテストを行う場合があります。したがって、この問題の影響が深刻でない場合は、この修正プログラムが含まれる次のソフトウェア更新プログラムがリリースされるまで待つことをお勧めします。
修正プログラムをダウンロードできる場合は、このサポート技術情報の資料の上部に「修正プログラムのダウンロード」セクションがあります。このセクションが表示されていない場合は、マイクロソフト カスタマー サービス サポートにお問い合わせのうえ、修正プログラムを入手してください。