セッションのデータベースコンポーネントに対する処理の繰り返し
メモ: ボーランド データベース エンジン(BDE)の使用は推奨されません。今後 BDE は機能拡張されません。たとえば、BDE では Unicode がサポートされていません。BDE を使用して新たに開発しないことをお勧めします。既存のデータベース アプリケーションを BDE から dbExpress に移行することを検討してください。
セッションコンポーネントの Databases と DatabaseCount という 2 つのプロパティを使用すると、セッションに関連付けられているすべてのアクティブなデータベースコンポーネントに対して処理を繰り返し実行できます。
Databases は、セッションに関連付けられている、現在アクティブなすべてのデータベースコンポーネントの配列です。DataSetCount は、その配列中のデータベースの数です。セッションの存続期間中に接続を開くかまたは閉じると、Databases と DatabaseCount の値が変わります。たとえば、セッションの KeepConnections プロパティが False で、すべてのデータベースコンポーネントが実行時に必要に応じて作成される場合、データベースを開くたびに、DatabaseCount は 1 ずつ増えます。また、作成されたデータベースを閉じるたびに、DatabaseCount は 1 ずつ減ります。DatabaseCount がゼロの場合、そのセッションには現在アクティブなデータベースコンポーネントはありません。
次のサンプルコードは、デフォルトセッション内でアクティブな各データベースの KeepConnection プロパティを True に設定します。
var MaxDbCount: Integer; begin with Session do if (DatabaseCount > 0) then for MaxDbCount := 0 to (DatabaseCount - 1) do Databases[MaxDbCount].KeepConnection := True; end;
if (Session->DatabaseCount > 0) for (int MaxDbCount = 0; MaxDbCount < Session->DatabaseCount; MaxDbCount++) Session->Databases[MaxDbCount]->KeepConnection = true;