読み出し専用結果セットの更新
メモ: ボーランド データベース エンジン(BDE)の使用は推奨されません。今後 BDE は機能拡張されません。たとえば、BDE では Unicode がサポートされていません。BDE を使用して新たに開発しないことをお勧めします。既存のデータベース アプリケーションを BDE から dbExpress に移行することを検討してください。
キャッシュアップデートを使用すると、読み出し専用の問い合わせ結果から元テーブルへの更新を行うことができます。
クライアントデータセットを使って更新データをキャッシュする場合、クライアントデータセットまたはそれに関連したプロバイダによって、更新を適用するための SQL 文が自動的に生成されます。ただし、その問い合わせが複数のテーブルを表していない場合に限られます。問い合わせが複数のテーブルを表す場合は、更新データを適用する方法を指定する必要があります。
- すべての更新を適用するデータベーステーブルが 1 つだけの場合は、Provider.OnGetTableName イベントハンドラ内でそのテーブルを指定し、更新します。
- 更新の適用処理をより細かく制御する必要がある場合は、その問い合わせをアップデートオブジェクト(Bde.DBTables.TUpdateSQL)に関連付けることができます。プロバイダは、自動的にこの更新オブジェクトを使って更新を適用します。
- 問い合わせの UpdateObject プロパティを使用している TUpdateSQL オブジェクトを設定することにより、問い合わせに更新オブジェクトを関連付けます。
- 更新オブジェクトの ModifySQL プロパティ、InsertSQL プロパティ、および DeleteSQL プロパティを、問い合わせデータを適切に更新する SQL 文に設定します。
BDE を使ってキャッシュアップデートを実行する場合は、更新オブジェクトを使用する必要があります。
メモ: 更新オブジェクトの使い方の詳細は、「更新オブジェクトを使ったデータセットの更新」を参照してください。