Daten der Attributtabelle mithilfe des Feldrechners oder einer Aktualisierungsabfrage ersetzen


Zuweilen möchte man in der Attributtabelle einzelne Textteile oder Zahlen austauschen. Vielleicht findet man einen Schreibfehler, der sich in Dutzenden Einträgen wiederholt, oder man möchte bei einer großen Anzahl Datensätze den Eintrag ändern.

 

Für beide unten aufgeführten Möglichkeiten ist das Umschalten des Bearbeitungsmodus des Layers NICHT notwendig.


Möglichkeit 1: Der Feldrechner

Hierfür kann man die replace-Operation im Feldrechner nutzen.

Abbildung 1
Abbildung 1

Ausgangssituation ist diese Attributtabelle, in der in Spalte TYPE das Wort »Country« gegen »Land« ausgetauscht werden soll (Abb. 1, roter Rahmen).

Zunächst wird mit Strg+I der Feldrechner gestartet. Über der Attributtabelle findet sich ebenfalls ein Button (Abb. 1, 4. Button von rechts).

Abbildung 2
Abbildung 2

Als erstes wird ein Haken gesetzt bei »Vorhandenes Feld erneuern« und darunter das Feld ausgewählt (Abb. 2, roter Rahmen und roter Pfeil). Im Ausdruck-Fenster wird das replace-Kommando wie gezeigt eingegeben (Abb. 2, blauer Rahmen). Achtung: Feldname in doppelten Anführungszeichen, dann der zu ersetzende Text, dann der neue Text. Die Text-String-Angaben jeweils in einfachen Anführungszeichen, und alles durch Kommata getrennt.

Das Ersetzen von Schreibfehlern geschieht auf dieselbe Weise: replace-Operation und dann in Klammern: erst der Feldname, dann der falsche Begriff, dann der korrigierte Begriff.


Möglichkeit 2: Aktualisierungsabfrage in der Attributtabelle

Aufgabenstellung: In der Spalte TYPE soll der gesamte Eintrag auf »Sovereign« gesetzt werden, und zwar nur für die markierten Datensätze.

Abbildung 3
Abbildung 3

Die Attributtabelle enthält oben eine fortlaufende Aktualisierungsabfrage (Abb. 3, roter Rahmen). Links wird das betreffende Feld ausgewählt (Abb. 3, roter Pfeil), daneben der Ausdruck eingegeben. Grundsätzlich gilt: Text wird immer in Hochkomma eingefaßt, Ziffern und Zahlen nicht!

Nun kann entschieden werden, ob nur die ausgewählten Einträge oder ALLE Einträge aktualisiert werden sollen (Abb. 3, blauer Pfeil). Hier ist also Vorsicht geboten: Wenn man nicht aufpaßt, könnte man unbemerkt alle Einträge der Tabelle ändern!

Außerdem gilt folgendes zu beachten: Ein Zahlenfeld (z.B. Integer) kann selbstverständlich keinen Text aufnehmen, auch wenn man das als Ausdruck in der Aktualisierungsabfrage einträgt! Gleiches gilt, wenn die Feldgröße des Textfeldes auf z.B. 10 Zeichen begrenzt ist, aber der Neueintrag 20 Zeichen lang ist! Das sind demnach mögliche Fehlerquellen, wenn die Aktualisierung nicht klappt. Es ist also sinnvoll, sich vorher über die Feldtypen und deren Grenzen zu informieren.