In PostgreSQL exportieren
Mapit GIS kann Feature-Layer direkt in eine PostgreSQL-Datenbank mit der Erweiterung PostGIS exportieren. Der Export nutzt eine direkte JDBC-Verbindung vom Gerät aus – ein zwischengeschaltetes Cloud-Relay oder ein Proxyserver ist nicht erforderlich.
So lassen sich im Gelände erfasste Daten in eine zentrale Datenbank übertragen, etwa für Analysen, Berichte oder die Einbindung in GIS-Workflows im Unternehmen.
- Android
- iOS
Voraussetzungen
Stellen Sie vor dem Export Folgendes sicher:
- Der PostgreSQL-Server läuft und ist aus dem Netzwerk des Geräts erreichbar (WLAN, Mobilfunk oder VPN).
- Die PostGIS-Erweiterung ist in der Zieldatenbank installiert (
CREATE EXTENSION IF NOT EXISTS postgis;). - Der Netzwerkzugang erlaubt dem Gerät eine direkte Verbindung zu Host und Port der Datenbank.
- Die Verbindungsdaten sind in der App konfiguriert (siehe unten).
Seit Version 3.0.4 verbindet sich die App per JDBC direkt mit PostgreSQL. Die IP-Adresse eines Relay-Servers muss nicht mehr freigegeben werden. Die Verbindung geht vom Gerät selbst aus.
Verbindung konfigurieren
- Öffnen Sie Einstellungen über das Hauptmenü.
- Navigieren Sie zu Remote-Verbindungen → PostgreSQL-Einstellungen.
- Geben Sie die Verbindungsdaten ein:
| Einstellung | Beschreibung | Beispiel |
|---|---|---|
| Host | Hostname oder IP-Adresse des Datenbankservers | db.example.com oder 192.168.1.50 |
| Port | PostgreSQL-Port | 5432 (Standard) |
| Benutzername | Datenbankbenutzer | mapit_user |
| Passwort | Datenbankpasswort | |
| Datenbankname | Zieldatenbank | field_data |
- Prüfen Sie mit der Schaltfläche Testverbindung die Verbindung, bevor Sie ins Gelände gehen.
Die Zugangsdaten werden lokal auf dem Gerät gespeichert. Stellen Sie sicher, dass der Datenbankbenutzer nur die minimal nötigen Rechte hat – in der Regel CREATE, INSERT, SELECT und DROP im Zielschema.
Layer exportieren
- Öffnen Sie den Bildschirm Layer.
- Drücken Sie lange auf den Layer, den Sie exportieren möchten.
- Tippen Sie im Kontextmenü auf Exportieren.
- Tippen Sie im Sheet mit den Exportzielen auf In PostgreSQL exportieren.
Exportmodus wählen
Ein Bottom Sheet bietet zwei Optionen an:
| Modus | Verhalten |
|---|---|
| Überschreiben | Löscht die vorhandene Tabelle (falls vorhanden) und legt eine neue mit den exportierten Daten an |
| Anhängen | Fügt Features einer vorhandenen Tabelle hinzu oder legt die Tabelle an, falls sie nicht existiert |
Überschreiben löscht alle vorhandenen Daten in der Zieltabelle unwiderruflich. Gehen Sie in Produktivumgebungen entsprechend vorsichtig vor.
Jede der beiden Optionen lässt sich unter Einstellungen → Exporteinstellungen ausblenden, wenn Sie versehentliches Überschreiben verhindern oder Ihren Workflow auf reines Anhängen beschränken möchten.
Exportfortschritt
Ein Fortschrittsdialog zeigt die Anzahl der exportierten Features. Aus Performancegründen werden die Features in Stapeln zu je 500 Zeilen mit mehrzeiligen INSERT-Anweisungen übertragen.
Nach Abschluss nennt eine Bestätigungsmeldung den Tabellennamen und die Gesamtzahl der exportierten Features.
Tabellenstruktur
Die exportierte PostgreSQL-Tabelle ist wie folgt aufgebaut:
- Die Tabelle wird im Schema public unter dem Namen des Layers angelegt.
- Über PostGIS wird eine Geometriespalte mit dem passenden Geometrietyp und SRID hinzugefügt.
- Alle Attributspalten des GeoPackage-Layers werden auf PostgreSQL-Datentypen abgebildet:
| GeoPackage-Typ | PostgreSQL-Typ |
|---|---|
| TEXT | TEXT |
| INTEGER | BIGINT |
| REAL / DOUBLE | DOUBLE PRECISION |
| BOOLEAN | BOOLEAN |
| DATE | DATE |
| DATETIME | TIMESTAMP |
| BLOB | BYTEA |
Umgang mit Geometrien
- Einfache Geometrien (Point, LineString, Polygon) werden aus Konsistenzgründen automatisch in ihre Multi-Entsprechungen (MultiPoint, MultiLineString, MultiPolygon) umgewandelt.
- Hat der Quell-Layer Z-Koordinaten, wird die Geometrie mit
ST_Force3DZerzeugt. - Geometrien werden mit
ST_GeomFromWKBund der passenden SRID eingefügt. - Die SRID wird aus dem Koordinatenbezugssystem des Layers abgeleitet (Standard 4326, falls keines festgelegt ist).
Fehlerbehandlung
| Situation | Verhalten |
|---|---|
| Verbindungsdaten nicht konfiguriert | Der Export wird mit einem Hinweis abgelehnt, die Datenbankverbindung zu konfigurieren |
| Netzwerk nicht erreichbar oder Verbindung abgelehnt | Der Export schlägt mit einem Verbindungsfehler fehl |
| Zugriff auf die Datenbank verweigert | Der Export schlägt mit einem Authentifizierungs- oder Berechtigungsfehler fehl |
| Ungültige Geometrie in einem Feature | Das Feature wird übersprungen; der Export läuft weiter |
Beispiel-Workflow
Ein typischer Ablauf vom Gelände in die Datenbank:
- Im Gelände: Erfassen Sie Features mit Mapit GIS und einem externen GNSS-Empfänger für hohe Genauigkeit.
- Zurück im Büro (oder über Mobilfunk): Öffnen Sie den Bildschirm „Layer“, drücken Sie lange auf den Layer und exportieren Sie ihn im Modus Anhängen nach PostgreSQL.
- Auf dem Server: Fragen Sie die Daten in QGIS, pgAdmin oder Ihren Reporting-Werkzeugen ab. Die Tabelle enthält die vollständige Geometrie und alle Attribute.
-- Example: View exported data in PostgreSQL
SELECT fid, name, ST_AsText(geometry) FROM tree_survey LIMIT 10;
-- Example: Count features by condition
SELECT overall_condition, COUNT(*) FROM tree_survey GROUP BY overall_condition;
Für wiederkehrende Exporte aus demselben Layer verwenden Sie den Modus Anhängen und ergänzen Ihr Layerschema um eine Datumsspalte, um die einzelnen Erfassungsdurchgänge unterscheiden zu können.
Wenn Sie sich über das Internet verbinden, sichern Sie die Datenbankverbindung mit einem VPN oder einem SSH-Tunnel ab. Die JDBC-Verbindung ist standardmäßig nicht verschlüsselt, sofern Ihr PostgreSQL-Server nicht für SSL konfiguriert ist.
Der Export nach PostgreSQL erfordert die Berechtigung Import/Export, die in den Stufen Pro und Pro+ enthalten ist.
Mapit GIS für iOS kann Feature-Layer direkt in eine PostgreSQL-Datenbank mit der Erweiterung PostGIS exportieren. Die Verbindung wird direkt vom Gerät aus aufgebaut – ein Relay- oder Proxyserver ist nicht erforderlich.
Der Export nach PostgreSQL erfordert unter iOS Mapit Pro+. Pro-Nutzer sehen beim Tippen auf eine der beiden Exportschaltflächen eine Paywall mit dem Angebot zum Upgrade auf Pro+.
Voraussetzungen
Vor dem Export:
- Der PostgreSQL-Server läuft und ist vom Gerät aus erreichbar (WLAN, Mobilfunk oder VPN).
- Die PostGIS-Erweiterung ist in der Zieldatenbank installiert (
CREATE EXTENSION IF NOT EXISTS postgis;). - Die Verbindungsdaten sind in der App konfiguriert – siehe Remote-Verbindungen – PostgreSQL.
Verbindung konfigurieren
Öffnen Sie Einstellungen → Remote-Verbindungen → PostgreSQL und geben Sie die Verbindungsdaten ein:
| Einstellung | Beschreibung | Standard |
|---|---|---|
| Host | Hostname oder IP-Adresse des Servers | — |
| Port | PostgreSQL-Port | 5432 |
| Datenbank | Name der Zieldatenbank | — |
| Benutzername | Datenbankbenutzer | — |
| Passwort | Wird sicher im iOS-Schlüsselbund gespeichert | — |
| Schema | Zielschema | public |
| SSL-Modus | disable / prefer / require | prefer |

Der Modus prefer akzeptiert jedes Serverzertifikat, was dem Standardverhalten unter Android entspricht. Für Produktivdatenbanken im öffentlichen Internet verwenden Sie require und stellen sicher, dass Ihr Serverzertifikat gültig ist.
Layer exportieren
- Öffnen Sie den Bildschirm Ebenen.
- Tippen Sie auf den Layer, den Sie exportieren möchten, und wählen Sie Exportieren.
- Wählen Sie im Sheet mit den Exportzielen entweder In PostgreSQL exportieren – Überschreiben oder In PostgreSQL exportieren – Anhängen.

Der Export nach PostgreSQL ist auf einzelne Layer beschränkt. Ein Export ganzer Projekte nach PostgreSQL wird nicht unterstützt – verwenden Sie für die Übertragung kompletter Projekte GeoPackage, Dropbox oder SFTP.
Exportmodi
| Modus | Verhalten |
|---|---|
| Überschreiben | Löscht die vorhandene Tabelle (falls vorhanden), legt eine neue Tabelle mit einem GIST-Geometrieindex an und fügt anschließend alle Features ein. Destruktiv. |
| Anhängen | Legt die Tabelle an, falls sie nicht existiert (CREATE TABLE IF NOT EXISTS), und fügt dann die Features ein. Vorhandene Zeilen bleiben unverändert. |
Vor jedem der beiden Vorgänge erscheint ein Bestätigungs-Sheet mit Layername, Host und Datenbank, damit Sie die Angaben vor dem Ausführen prüfen können.


Überschreiben löscht alle vorhandenen Daten in der Zieltabelle unwiderruflich. Gehen Sie in Produktivumgebungen entsprechend vorsichtig vor.
Jeder der beiden Modi lässt sich unter Einstellungen → Remote-Verbindungen → PostgreSQL → Exportoptionen einzeln ausblenden, um einen Workflow auf reines Anhängen oder reines Überschreiben zu beschränken. Einzelheiten finden Sie unter Remote-Verbindungen – PostgreSQL.
Exportfortschritt
Die Features werden in Stapeln zu je 250 Zeilen geschrieben, jeder Stapel in einer eigenen BEGIN-/COMMIT-Transaktion. Ein Rollback erfolgt nur bei einem Fehler im aktuellen Stapel – bereits festgeschriebene Stapel bleiben auf dem Server erhalten. Eine Fortschrittsanzeige zeigt den Exportfortschritt.

Ausgabe-Koordinatenbezugssystem
Geometrien werden im Anzeigeformat exportiert, das unter Einstellungen → Einheiten & Koordinaten eingestellt ist. Weicht dieses Koordinatensystem von WGS84 ab, werden alle Geometrien vor dem Upload auf dem Gerät umprojiziert – eine Umprojektion auf dem Server ist nicht nötig.
Tabellenstruktur
Die exportierte Tabelle wird im konfigurierten Schema (Standard public) unter dem Namen des Layers angelegt. Bei Exporten im Modus „Überschreiben“ wird ein räumlicher GIST-Index auf der Geometriespalte erstellt. Die Attributspalten werden wie folgt abgebildet:
| GeoPackage-Typ | PostgreSQL-Typ |
|---|---|
| TEXT | TEXT |
| INTEGER | BIGINT |
| REAL / DOUBLE | DOUBLE PRECISION |
| BOOLEAN | BOOLEAN |
| DATE | DATE |
| DATETIME | TIMESTAMP |
| BLOB | BYTEA |
Fehlerbehandlung
| Situation | Verhalten |
|---|---|
| Verbindung nicht konfiguriert | Der Export wird mit einem Hinweis abgelehnt, die Verbindung zu konfigurieren |
| Netzwerk nicht erreichbar | Der Export schlägt mit einem Verbindungsfehler fehl |
| Zugriff verweigert | Der Export schlägt mit einem Authentifizierungs- oder Berechtigungsfehler fehl |
| Ungültige Geometrie | Das Feature wird übersprungen; der Export läuft mit den übrigen Features weiter |