Hallo,
ich nehme einmal an, dass es sich um die 17te Tabelle gehandelt hat. Scheinbar verwendest du ein Datenbanksystem, welches nur 16 gleichzeitige Tabellenzugriffe zulässt.
Bei den meisten Datenbanksystemen wirst du die Zahl in irgendeiner Konfigurationsdatei hochdrehen, und das Problem somit weiter in die Zukunft schieben können. Besser ist es allerdings, wenn du das Problem erst gar nicht auftreten lässt. Ich nehme an, dass du nie gleichzeitig auf die Inhalte aller Tabellen zugreifen wirst. Daher solltest immer nur die Tabellen offen halten, die auch in diesem Moment benötigt werden.
Angenommen deine Anwendung besteht aus einem DataModule auf dem alle deine Tabellen liegen und aus einigen Formularen, welche jeweils ein DBGrid enthalten, welches jeweils den Inhalt einer Tabelle anzeigt, dann solltest du diese Tabelle im OnShow öffnen und im OnHide wieder schließen. Also z. B. so:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| procedure TForm1.FormHide(Sender: TObject); begin DataModule1.Table1.Close; end;
procedure TForm1.FormShow(Sender: TObject); begin DataModule1.Table1.Open; end; |
Vorher musst du in deinem DataModule noch bei allen Tabellen
Active auf
False setzen.
critter
_________________
Diejenigen, die grundlegende Freiheiten aufgeben, um ein wenig mehr vorrübergehende Sicherheit zu erkaufen, verdienen weder Freiheit noch Sicherheit.
(Benjamin Franklin;"The Papers of Benjamin Franklin", Vol. 6, Apr. 1, 1755, through Sep. 30, 1756)