Access Design: Anfügeabfragen anstelle von Tabellenerstellungsabfragen

Aus DBWiki
Wechseln zu: Navigation, Suche

Problem

Häufig treten im Zusammenhang mit Tabellenerstellungsabfragen Probleme auf. So kann man z.B. nicht den Felddatentyp (Länge von Textfeldern), Einstellungen von Feldern (wie z.B. Nachschlage-Eigenschaften) oder Indizes festlegen.

Abhilfe

Anstelle Konstruktionen zu basteln, die die fehlenden Einstellungen und Eigenschaften nachträglich in die Tabelle eintragen ist es in aller Regel einfacher, auf die Tabellenerstellungsabfrage zu verzichten und an ihrer Stelle eine Anfügeabfrage zu verwenden. (Vorher löscht man natürlich die vorhandenen Daten mit einer Löschabfrage).

Bemerkung

Ganz allgemein sollte man sich allerdings überlegen, ob überhaupt die Erstellung einer separaten Tabelle notwendig ist. Datenbanktechnisch sauberer ist normalerweise die Verwendung einer Auswahlabfrage - allerdings kann die Erstellung einer neuen Tabelle manchmal aus Performance-Gründen erforderlich sein oder weil sich nur so aktualisierbare Verknüpfungsformen realisieren lassen.

Nach Möglichkeit sollte man derartige Hilfstabellen aber nicht im Backend, sondern im Frontend oder in einer separaten (lokalen) Datenbank ablegen und sicherstellen, dass diese Datenbank beim Programmstart neu erzeugt oder wenigstens regelmäßig komprimiert wird.

Durch eine gute Planung der Applikation sollte eigentlich die Notwendigkeit, Hilfstabellen im Frontend oder in einer, der Applikation zugeordneten lokalen Datenbank zu verwenden bereits berücksichtigt sein. Die Frage ob nun diese Hilfstabellen laufend nach Bedarf neu erstellt werden müssen stellt sich eigentlich dadurch nicht mehr und der Entwickler kann sich darauf konzentrieren geeignete Routinen zu programmieren, welche spätestens beim Schließen der Applikation diese Hilfstabellen entleeren und die Datenbank komprimieren.