Im Prinzip möchte ich nur eine Automatik die mir bestimmte Spalten aus der Urtabelle (im Schema public) in die neue Tabelle in meinem eigenen Schema “Kopie”, welches den Postgis-Aufsatz hat, “rüber geschoben” haben. Dabei wird die Urtabelle durch ein externes Programm (GeODin) geändert. Die Änderungen können eben Inserts, Deletes oder Updates irgend einer Zeile sein. DAs Problem ist, dass die Urtabelle viel mehr SPalten hat als die 5 Spalten die ich ausschließlich haben will. Die anderen Spalten können ebenfalls gelöscht oder geupdatet werden ohne das sich was an den 5 Spalten ändert die mich interessieren. Somit soll der Trigger dann dort nicht auslösen obwohl etwas in der ROW bzw Spalte geändert wird. Ich weiß nicht mal ob das möglich ist… Deshalb dachtre ich die OLD/NEW GEschichte wäre eine Lösung.
Etwaige Feinheiten wie das ausschließliche Kopieren bzw Löschen von Zeilen in die neue Tabelle die Koordinaten haben wären ein Bonus.
Für mich stellt sich erstmal die Grundfrage wie ich die Daten in das andere Schema bekomme OHNE VIEW oder FDW (also ganz und gar andere Datenbank).
Ich möchte die neue Tabelle ungern im selben Schema anlegen wie die GeODin-Tabellen (das sind 97). GeODin hat die Struktur automatisch angelegt und ist relativ schmerzfrei. Dennoch wäre mir die neue Tabelle lieber in einem anderen Schema, da ich dort auch den PostGIS Aufsatz hinlegen kann und dort alle Berechnungen die ich mit den Koordinaten vor habe ausführen kann ohne die Struktur der originalen Tabellen zu nötigen.
Achso: Das Ziel der neuen Tabelle sollen PostGIS-DAten sein die ich aus den orignalen Daten zusammenbaue und berechne um diese über ein WebGIS einzubinden. Das wichtigste daran: Es muss up to DAte sein… Das heißt wenn ich was in GeODin eingebe oder lösche oder update, soll dieses dann automatisch in den DAten für das WebGIS widergespiegelt werden. Deshalb fällt ein View oder ein MV aus. Das FWD möchte ich nur ungern machen weil ich davon gleich mal null Ahnung habe. Es sei denn mir erklärt dass jemand, was ich nicht glaube.
So ich hoffe ich hab es halbwegs sinnvoll erklärt.
Gruß Stefan
PS.: Ich hatte schon eine Lösung über einen Insert-Trigger mit vorlaufendem Delete der neuen Tabelle. Jedoch gab es Probleme mit einer Serial-Spalte und dem delete…
So langsam bin ich etwas ratlos.