Das Einlesen einer Microsoft Access-Datei erfolgt (ausschließlich) über die Methode Direktzugriff (vergleichbar zu dBASE und im Unterschied zu Excel bzw. TXT- oder CSV-Dateien).
Der Direktzugriff auf Access-Dateien ermöglicht unmittelbar schreibenden Zugriff auf die Tabelle und ist flexibler in der Handhabung.
Technische/methodische Besonderheiten und Hinweise:
•In GeoAS/MapInfo besteht schreibender Zugriff auf die Daten.
(Die Tabellenstruktur kann in GeoAS/MapInfo mit Einschränkungen verändert werden. Bestehende Tabelleninhalte können verändert werden. Es können Datensätze/Zeilen hinzugefügt oder entfernt werden.) •Die Tabelleninhalte verbleiben in der original Access-Datei *.mdb/*.accdb.
(Es findet keine Replikation der Tabelleninhalte in das native MapInfo-Dateiformat *.dat statt.) •Die Daten können sowohl in GeoAS/MapInfo als auch in Access geändert werden.
(Der Anwender kann in beiden Systemen die Daten fortführen.) •Ändern sich nur die Tabelleninhalte (bei sonst unveränderter Tabellenstruktur), muss die Access-Datei nicht neu eingelesen werden.
Dies gilt auch für den Fall zusätzlicher Zeilen/Datensätze, da beim Import die auszulesenden Tabellenzeilen in der *.tab-Datei nicht berücksichtigt werden (im Gegensatz zu Excel).
(Die Access-Datei wird über die *.tab geöffnet.) •Ein zeitgleicher lesender Zugriff parallel durch Access und GeoAS/MapInfo ist möglich. •Ein zeitgleicher schreibender Zugriff parallel durch Access und GeoAS/MapInfo ist bei Beachtung bestimmter Rahmenbedingungen ebenfalls möglich.
(Änderungen, die in Access bzw. in GeoAS/MapInfo an der *.mdb/*.accdb vorgenommen werden, wirken sich wechselseitig aus - sind also in der jeweiligen Programmoberfläche sichtbar.) •Ändert sich die Tabellenstruktur, muss die Access-Datei zwingend neu in GeoAS/MapInfo importiert werden (damit die aktuelle Tabellenstruktur in der *.tab abgebildet wird).
(z.B.: Änderungen bei: Anzahl Spalten, Spaltenüberschriften, Spaltenreihenfolge, Datentypen)
Anderenfalls wird folgender Hinweis in GeoAS/MapInfo angezeigt:
•Die Tabellenstruktur kann mit Einschränkungen in GeoAS/MapInfo und vollumfänglich nur mit Access modifiziert werden.
Beispiel *.mdb
(vergrößern)
|
Beispiel *.accdb
(vergrößern)
|
Beim Direktzugriff wird automatisch folgende Datei erstellt:
•Dateiname.tab (Informationen zur Tabellenstruktur) •Dateiname.aid (Index-Datei) •Dateiname.ldb (Access-spezifische "Sperr"-Datei, besteht nur zur "Laufzeit")
vor dem Öffnen
|
aktuell in MapInfo Pro geöffnet
|
nach dem Schließen
|
|
|
Beim Direktzugriff wird automatisch folgende Datei erstellt:
•Dateiname.tab (Informationen zur Tabellenstruktur) •Dateiname.aid (Index-Datei) •Dateiname.ldb (Access-spezifische "Sperr"-Datei, besteht nur zur "Laufzeit")
vor dem Öffnen
|
aktuell in MapInfo Pro geöffnet
|
nach dem Schließen
|
|
|
Hinweis
|
Informationen zum zeitgleichen schreibenden Zugriff:
Änderungen durch GeoAS/MapInfo in der Access-Tabelle:
•Änderungen im Datenbestand müssen erst mit Relation speichern gespeichert werden, damit die Modifikationen in Access angezeigt werden. •Das Löschen von Datensätzen muss erst mit Relation speichern gespeichert werden, damit die Modifikationen in Access angezeigt werden. •Das Hinzufügen von Datensätzen muss erst mit Relation speichern gespeichert werden. Die Modifikationen werden erst nach dem Schließen und erneutem Öffnen der Access-Tabelle oder Access-Datei in Access angezeigt.
Änderungen durch Access in der Access-Tabelle:
•Änderungen in der Access-Tabelle, werden bereits zur Laufzeit in GeoAS/MapInfo angezeigt (und müssen NICHT erst gespeichert werden). Damit die Modifikationen angezeigt werden, muss in GeoAS/MapInfo lediglich das Anzeigefenster aktualisiert werden (z.B. Neues Anzeigefenster, Sortieren einer Spalte, Erneut Anwenden , oder eine Tabellenzeile/Datensatz selektieren). |
Vorsicht
|
•Die Tabellenstruktur kann in GeoAS/MapInfo nur mit Einschränkungen angepasst werden:
Für bestehende Felder (Spalten) können Feldnamen und Datentypen nicht verändert werden. Dies gilt auch für die Reihenfolge. (Die entsprechenden Schaltflächen sind deaktiviert/ausgegraut.)
Es können bestehende Felder (Spalten) entfernt bzw. neue Felder (Spalten) hinzugefügt werden.
Das nachträgliche Ändern von Feldnamen und Datentypen ist nicht möglich (nachdem der Dialog mit OK geschlossen und anschließend wieder geöffnet wurde). (vergrößern)
•In Microsoft Access stehen die Datentypen Langer Text und Kurzer Text zur Verfügung (um längere Texte zu hinterlegen).
In GeoAS/MapInfo steht als korrespondierender Datentyp Zeichen zur Verfügung.
Der Datentyp Langer Text (Memo-Feld) wird von GeoAS/MapInfo NICHT unterstützt und nicht angezeigt.
(Stattdessen sollte daher der Datentyp Kurzer Text verwendet werden.) (vergrößern)
Der Datentyp Kurzer Text wird von GeoAS/MapInfo unterstützt und angezeigt.
Spalten vom Datentyp Kurzer Text werden bei einer Zeichenlänge bis max 254 schreibend und bei einer Zeichenlänge von 255 nur lesend geöffnet.
(vergrößern)
Bei Microsoft Access beträgt für den Datentyp Kurzer Text der Maximalwert 255.
In GeoAS/MapInfo ist der Datentyp Zeichen ist auf die Maximalbreite von 254 begrenzt.
Wird eine Access-Tabelle -bei der eine oder mehrere Spalten mit einer Breite von 255 definiert sind- nach GeoAS/MapInfo importiert, werden diese Spalten nur im "Lese-Modus" geöffnet.
In der *.tab-Datei wird der Wert der entsprechenden Spalte auf 254 gesetzt und mit ReadOnly ergänzt.
Wir empfehlen daher in Microsoft Access über die Entwurfsansicht den Wert für die Feldgröße auf maximal 254 zu setzen und dann erst die Access-Datei zu importieren.
Beispiel: 255 Zeichen
(vergrößern)
(vergrößern)
•Beispiel: 200 Zeichen (vergrößern)
(vergrößern)
•Werden Zeilen/Datensätze in GeoAS/MapInfo gelöscht, wird dies in Access wie folgt angezeigt:
Der "Gelöscht"-Vermerk kann durch Komprimeren der Tabelle entfernt werden. •Ist die Access-Datei zeitgleich in Access und GeoAS/MapInfo geöffnet, ist in GeoAS/MapInfo das Komprimieren der Tabelle nicht möglich.
Soll die Tabelle mit GeoAS/MapInfo komprimiert werden, muss die Tabelle zuvor in Access geschlossen werden.
Hinweis in GeoAS/MapInfo (*.mdb):
Hinweis in GeoAS/MapInfo (*.accdb):
(Bei Verwendung der vergleichbaren Funktion in Access, erscheint dort ein analoger Hinweis.) •Ist die Access-Datei zeitgleich in Access und GeoAS/MapInfo geöffnet, ist eine Änderung der Tabellenstruktur weder in Access noch in GeoAS/MapInfo möglich.
Soll die Tabellenstruktur mit GeoAS/MapInfo geändert werden, muss die Tabelle zuvor in Access geschlossen werden.
Hinweis in GeoAS/MapInfo (*.mdb):
Hinweis in GeoAS/MapInfo (*.accdb):
(Bei Verwendung der vergleichbaren Funktion in Access, erscheint dort ein analoger Hinweis.) •Die Funktion Relation löschen löscht nicht die Original-Datei (*.mdb/*.accdb) sondern nur die damit verknüpften MapInfo-proprietären Dateien (z.B. *.tab, ...) |
|