Allgemein
Weshalb soll/muss die Struktur geändert werden
Nachfolgendes Szenario ist sicherlich vielen bereits mehr als bekannt. Eine Anwendung, die Sie in Access oder Visual Basic erstellt haben ist mehrfach bei Kunden bzw. Anwendern im Einsatz. Sie haben die Anwendung erweitert. Neue Funktionen und Programmteile benötigen zusätzliche Tabellen bzw. Tabellenfelder. Unter Umständen muss die Feldgröße geändert oder sogar der Feldtyp geändert werden. Oft kommt es auch vor, dass nachträglich ein Index gesetzt, geändert oder gelöscht werden muss. Bestimmt haben Sie nicht bei allen Kunden die Möglichkeit, das Backend per Remote (DFÜ) anzupassen. Zudem ist es auch sehr zeitintensiv und je mehr Kunden und Anwender Sie haben, desto größer ist der Aufwand. Sicherlich möchten Sie Ihre Kunden bei einem Update Ihrer Anwendung auch nicht immer persönlich aufsuchen um manuell die Anpassen vorzunehmen.
Was bleibt ist eine automatische Prüfung und Anpassung per Code mit VB bzw. VBA. Prüfung deshalb, da verschiedene Kunden auch verschiedene Versionsstände einsetzen. Die Erfahrung zeigt, dass nicht jeder Kunde auch jedes Update installiert bzw. verwendet. Sie müssen daher immer prüfen, ob die Tabelle bzw. das Feld bereits vorhanden und sie bzw. es ggf. anlegen. Bei Änderung der Feldgröße muss zunächst geprüft werden, ob das Feld nicht bereits angepasst wurde.
Für jede Tabelle und jedes Feld müssen Sie zunächst eine Prüfung durchlaufen und danach die Datenbank anpassen. Für die verschiedenen Anpassungsmöglichkeiten geben wir Ihnen in diesem Workshop verschiedene Funktionen zur Hand. Da das Ändern immer über DAO (Data Access Objects) erfolgt und es verschiedene Versionen gibt, zeigen wir immer beide Methoden. Access 97 läuft mit der Jet-Engine 3.5x und kennt nicht alle Befehle der Jet-Version 4.0 (ab Access 2000). Access 97 bzw. die von dieser Access-Version verwendete Jet-Engine kennt zwar manche Befehle von Db.Execute, aber der volle Befehlsumfang steht erst ab Access 2000 zur Verfügung.