データ連結の制限事項

更新 : 2007 年 11 月

データ連結は、データ アプリケーションを短時間で作成するための有効な手段です。ただし、現在のデータ バインディング コントロール アーキテクチャは本質的に 2 階層です。

スケーラビリティ

ADO データ連結コントロールがアクセスできるデータは、ADO データ コントロールのデータだけです。RDO データ連結コントロールがアクセスできるデータは、RDO RemoteData コントロールのデータだけです。RDO RemoteData コントロールの場合は、2 階層アーキテクチャ以外のアクセス手段がないため、すべてのデータ取得要求がデータベース サーバーに直接送られます。データベース サーバーへの直接接続を回避するには、プロバイダを作成して、中間層のビジネス オブジェクトおよびデータ オブジェクトにアクセスするようにします。ADO データ コントロールは、データベース サーバーではなく、これらのオブジェクトに接続されます。このような中間層オブジェクトのキャッシュと管理は、COM+ 1.0 サービスなどのトランザクション サーバーで行うことができます。

バージョン管理と配布

コントロールの新しいバージョンがリリースされたときは、アプリケーションを新規バージョンのコントロールでテストする必要があります。ユーザーのコンピュータに別のアプリケーションがインストールされており、コントロールのバージョンが異なる場合は、このアプリケーションを調べる必要があります。また、コントロールの新しいバージョンがリリースされたときに、新しいコントロールをアプリケーションのユーザーに配布する必要があります。

ドライバとプロバイダ

データ連結機能の性能は、使用する ODBC ドライバまたは OLE DB プロバイダによって決まります。ドライバとプロバイダによってデータがデータ コントロールに公開されるため、アプリケーションで必要な機能がドライバまたはプロバイダによってサポートされている必要があります。また、選択したドライバまたはプロバイダがユーザー環境にインストールされている必要があります。ドライバまたはプロバイダが必要とするミドルウェアもインストールされている必要があります。たとえば、ODBC Oracle を接続する場合は、ユーザーのコンピュータに、ODBC Oracle ドライバのほか、Oracle の SQL*Net ミドルウェアもインストールされている必要があります。Oracle 7.3 サーバーを接続する場合は、Microsoft Oracle ODBC ドライバの使用をお勧めします。

プログラミング

ActiveX コントロールは、ブラック ボックス コンポーネントとしてデザインされているため、開発者がプログラミングできる部分はコントロールのインターフェイスだけです。リソース エディタのデータ連結モデルでは、ActiveX コントロールの挿入ウィザードによって作成されるラッパー クラスを使用してプログラミングできます。ウィザードでコクラスを検出できない場合は、ラッパー クラスが作成されないため、プログラムによるアクセスはありません。

これらの制限はありますが、データ連結は、Visual C++ でデータ アプリケーションのプロトタイプをすばやく作成する上で有効です。開発速度が重視される場合は、アプリケーションのデザイン時にデータ バインディングを検討してください。

参照

参照

Visual C++ で ActiveX コントロールによるデータ連結を行う