0

私はいくつかの古いWeb アプリケーション、UI 用の VBScript ベースの ASP、ビジネスおよびデータ アクセス レイヤー用の VB6 COM モジュールをサポートしています。先週末、いくつかの Windows 2000 サーバーに DB2 Connect Enterprise Edition v8 フィックスパック 14 をインストールしましたが、組み込みの VBScript 関数FormatNumberを呼び出すと、Web アプリケーションの 1 つが null データでエラーになります。この数値データは SQL Server クエリによって取得されますが、SQL Server 列にデータが入力される唯一の方法は、数ページにわたる進行の早い段階で DB2 クエリから返された計算結果を使用することです。

DB2 Connect EE をインストールしたときにロードされたコンポーネントの 1 つは MDAC 2.7 でした。企業の指示に従い、インストール時に ODBC システム データ ソースを保存しました。インストール後にテストしたところ、良好な接続が報告されました。

価値があるのは、製品 VB6 モジュールのプロジェクト参照が MDAC 2.5 を指していたことです。MDAC 2.7 を参照する VB6 モジュールの新しいバージョンをテスト サーバーで再コンパイルして COM に展開しようとしました。私の開発環境は Windows XP Pro で、MDAC 2.8 と DB2 Connect EE v9.5 がインストールされています。更新された VB6 dll をデプロイすると、CreateObjectがクラスのインスタンス化に失敗し、「クラスはオートメーションまたは要求されたインターフェイスをサポートしていません」というエラー メッセージが表示されます。

DB2 Connect のインストールを元に戻し、以前の環境であった DB2 ランタイム クライアントの v8 を再インストールしました。ただし、問題は解決しません。

4

1 に答える 1

0

SQL Server がどこにあり、DB2 がどこにあるのか、物事がどのように接続されているかについての全体像がよくわかりません。
IBM のサイトには、特に DB2 Connect EE を支援するためのフォーラムがありますが、これはかなり高価な製品だと思います (よくわかりません)。

私が見た 1 つの方法は、SQL サーバーをデータ ゲートウェイとして構成することです。DB2 をリンク サーバーとして定義し、SQL サーバーを介して SQL クエリを実行して、DB2 にアクセスできます。アプリは、DB2 に直接接続するのではなく、SQL Server に接続できれば十分です。それらは間接的に DB2 に到達します。システムの負荷によっては、これが実行できる場合と実行できない場合があります。このアプローチにより、DB2 と SQL に別々に保管されたデータ間で結合を行うこともできます。

これは、レプリケーション、データ フェデレーションなどとともに、ツールボックスのもう 1 つのオプションです。これにより、接続の変動性が減少することがわかりました。

于 2009-03-07T20:24:33.700 に答える