1. Home
  2. Export nach Postgres und SQLite

Export nach Postgres und SQLite

Das Programm Mum.Geo.Ora2SQLite.exe befindet sich im Ordner Ora2SOLite des MapEdit Verzeichnisses. Starten Sie das Programm mit Doppelklick auf die exe. – Datei.

Startbildschirm

Sie erhalten ein Fenster in dem Sie Quelle / die zu übertragenden Daten / Ziel bestimmen.

SOURCE DATABASE

Bei der Datenquelle stehen Ihnen zwei Datenbanktypen zur Auswahl: Oracle oder Postgres. Je nach Datenbanktyp können Sie sich mit den entsprechenden Anmeldedaten mit der Quelldatenbank verbinden. In den Feldern Pre Script und Post Script kann ein SQL File angegeben werden das entsprechend vor oder nach der Übernahme ausgeführt werden soll. Wenn Sie auf Connect klicken, bekommen Sie im zweiten Fenster TABLES alle Tabellen der Datenbank angezeigt.

TABLES

Datenbank Tabellen

Es besteht nun die Möglichkeit über die verschiedenen Schaltbuttons entweder alle Tabellen oder nur einzelne Tabellen auszuwählen, oder nur die Systemtabellen oder die Domaintabellen auszuwählen. Mit dem Button < und <<< können aus der Exportliste einzelne oder alle Tabellen aus Exportliste entfernt werden.

Wenn nur einzelne Tabellen ausgewählt werden, wird trotzdem die komplette Datenstruktur übertragen und der Tabelleninhalt der ausgewählten Tabellen.

TARGET DATABASE

Als Zieldatenbank stehen zwei Datenbanktypen zur Auswahl Postgres oder SQLite

Ziel DB

Bitte beachten, die Oracle SRID ist normalerweise nicht dieselbe wie die SRID unter postgres. Daher unbedingt die Postgres SRID Nummer vorgeben. Wenn die Übertragung der SRID nicht gewünscht wird, die Zahl -1 vergeben. In Postgres wird unabhängig der Groß-Kleinschreibung die Datenbank immer in Kleinbuchstaben angelegt.

Bei dem Export nach SQLite muss lediglich der SOLite Dateinamen angegeben werden.

Ausgabe in SQLite

Schalter für drei weitere Optionen

Auswahlschalter
  • Create Audit Triggers/Tables: Dieser Schalter wird benötigt beim Einsatz von MapEdit Offline. Der Schalter erzeugt Tabellen und Trigger die es ermöglichen alle Änderungen an den Daten nachzuvollziehen. Dies wird später für das Rücksynchronisieren mit dem Original Datenbestand benötigt. Die Option kann auch in der Kommandozeilen Version angegeben werden mit dem Befehl: CreateAudit=True;
  • Create Live Views Wenn man dies aktiviert versucht das Programm echte Views anzulegen und zwar aus der Oracle Definition des Views. Das ist nur in einfachen Fällen erfolgreich, weswegen ein händisches Nacharbeiten mit Hilfe eines Scriptes notwendig ist, wenn man echte Views benötigt. Wenn diese Option ausgeschalten ist werden aus den Oracle Views Tabellen erzeugt. D.h. die Daten sind redundant, aber das Anlegen geschieht ohne Probleme. Dies ist natürlich nur sinnvoll wenn man rein lesend auf die Daten zugreift. Wenn man Daten in der SQLite Datei über MapEdit verändern will dann muss man « Create Live Views » einschalten und entsprechend die Views manuell (bzw. via Script) anlegen. Die Option kann auch in der Kommandozeilen Version angegeben werden mit dem Befehl: CreateLiveViews=True;
  • Create Planning Attributes Dieser Schalter findet Anwendung wenn das Modul Varianten Planung eingesetzt wird. Wenn also SQLite Dateien für das Planungsmodul erzeugen werden sollen, dann muss dieser Hacken gesetzt sein.

Durch Betätigen des Buttons CREATE wird der Export in die gewünschte Datenbank gestartet.

Export nach Postgres und SQLite im Batch

Es gibt leider noch ein kleines Problem in allen Versionen kleiner 21.1.173. Das Problem wurde aber ab der Version 21.1.173 gefixt.

Der Parameter « PGSuperDatabase » wird bei Versionen kleiner Version 21.1.173 für den Batch Export nicht gelesen.
Man muss bei diesen Versionen einmalig den Export manuell starten und die ‘Super User Datenbank’ eingeben und den Export ausführen.
Dann landet dieser Name in den Einstellungen, diesen merkt sich das Programm.
Wenn das einmal gemacht wurde, dann nimmt das Programm danach beim Batch Export den ‘Super User Datenbank’ Namen aus den gemerkten Einstellungen.

Das Programm befindet sich im Installationspfad von MapEdit unter: C:\Programm Files (x86)\MuM MapEdit\Ora2SQLite

Hier ein einfaches Beispiel für den Export mit Mum.Geo.Ora2SQLite.exe:

Oracle Quell Datenbank:

Username=OSNAB_ME;
Password=avs;
Service=orcl;

Postgres Zieldatenbank (Die Datenbank wird vom Programm erzeugt, muss nicht vorhanden sein, Datenbanken in Postgres werden immer in Kleinbuchstaben angelegt.)

PGUserId=admin-vp;        (Das Feld 'Super User Name' in der UI)
PGPassword=avs;           (Das Feld 'Super User Password' in der UI)
PGSuperDatabase=postgres; (Das Feld 'Super Database' in der UI)
PGPort=5432;              (Das Feld 'Port' in der UI)
PGServer=localhost;       (Das Feld 'Server' in der UI)
PGDatabase=osnab_me_1;    (Das Feld 'Database' in der UI)
PGRecreateDB=True;        (Das Feld 'Recreate Database' in der UI) <<< Wenn die  Datenbank schon da ist wird sie geloscht und neu erzeugt)

weiterer Parameter:

CreateLiveViews=True;

Alle Parameter die beim Oracle nach Sqlite verwendet werden können, gehen auch beim Oracle nach Postgres.
Also ExportTablesFilename, ScriptFilename usw. Der Unterschied der beiden ist das man bei sqlite die Ziel sqlite Datei angibt mit:

Filename=c:test22.db; 

und bei Postgres gibt man die Zieldatenbankverbindung an:

PGUserId=admin-vp;    
PGPassword=avs;
PGSuperDatabase=postgres;
PGPort=5432;
PGServer=localhost;
PGDatabase=osnab_me_1;
PGRecreateDB=True; 
Updated on juillet 9, 2021