Re: Erste Schritte

From: Daniel Reimann <halle_saale(at)arcor(dot)de>
To: pgsql-de-allgemein(at)lists(dot)postgresql(dot)org
Subject: Re: Erste Schritte
Date: 2018-03-13 17:21:31
Message-ID: d8ea15b9-5da6-6899-2c51-665e8ab133bb@arcor.de
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-de-allgemein

Guten Abend und vielen Dank für die Impulse.

Natürlich haben Sie völlig recht! Wie geschrieben, habe ich im Prinzip
keine Erfahrung mit SQL-Datenbanken, da ich von Vermessung herkomme und
da eher mit GIS und Katasterauswertesystemen zu tun habe. Das war genau
auch der Grund, warum ich diesen Ansatz gewählt habe: Ich finde es
schwierig, wenn man sich neu in ein Thema reinarbeiten möchte und dazu
dann rein theoretische Aufgabenstellungen nimmt. Mit ALKIS bin ich
vertraut, ich weiß, worum es geht. Da hat man schon mal einen Anker.

Davon mal abgesehen: Natürlich hatte ich mich vorher zunächst auf
diversen Seiten versucht schlau zu machen, in erster Linie auf
postnas.org. Aber ganz ehrlich: Aus dieser Seite wird man als
"Außenstehender" nicht schlau. Ich verstehe das Ziel: Einlesen von
ALKIS-Katasterdaten in Datenbanken, um sie später visualisieren zu
können. Aber auf welche Weise dies erreicht werden soll, wie man sich
dem Thema als Neuling nähern soll, wird überhaupt nicht behandelt. Soll
das mit grafischen Benutzersystemen erreicht werden, durch Werkzeuge,
oder eher durch reines "Programmieren". Wie sieht ein Beispiel für eine
kleine Übung aus etc. Es werden zwar zig Programme und Tools verlinkt,
aber kein Arbeitsweg, kein roter Faden aufgezeigt. Muss ich dafür
programmieren können oder nicht? Natürlich weiß ich, dass das alles sehr
spezifisch ist und nicht mal eben im Vorbeigehen zu erlernen ist. Aber
ich könnte mir sehr gut vorstellen, dass es noch mehr "reine Anwender"
wie mich gibt, die sich bisher um SQL-Datenbanken oder Programmierung
wenig kümmern mussten, jetzt aber etwas tiefer in die Materie einsteigen
wollen und dann nach der ersten Kontaktaufnahme mit dieser Seite sagen:
Ach, Danke...Ich finde immer, ein Einstieg sollte immer so formuliert
sein, dass er möglichst allgemeinverständlich ist.

Ich hatte auch versucht, Kontakt dort aufzunehmen (über die wheregroup)
aber leider habe ich keine Reaktion erhalten.

Aber gut, dann werde ich nochmal allgemein und kleiner beginnen.

Herzlichen Dank nochmals,

Daniel Reimann

Am 13.03.2018 um 12:25 schrieb Jäger, Frank (KRZ):
> Hallo Daniel,
> hier vermischen sich zwei sehr gegensätzliche Probleme:
>
> 1. Einerseits scheinst du noch wenig Erfahrungen zu haben mit Datenbanken, SQL und Tools wie dem pgAdmin.
> 2. Die Datenstruktur des Verfahrens ALKIS aus den PostNAS-Konverter ist komplex, schwer zu verstehen und hat zahlreiche "Besonderheiten".
>
> Zum Üben der "Basics" würde ich zunächst mit einer einfacheren Datenbank beginnen. ALKIS eignet sich definitiv nicht als "erste Übung".
>
> Allgemeine Fragen zu (1.) sind in dieser Liste gut aufgehoben.
> Wenn die grundlegenden Dinge rund um Datenbanken und SQL eingeübt sind, und du dich in die Struktur von ALKIS tiefer einarbeiten willst, findest du weitere Hilfe auf der Seite http://postnas.org und in der Mailingliste https://lists.osgeo.org/mailman/listinfo/nas.
>
>
>> Ich möchte diese Spalte in die Tabelle ap_ppo einfügen.
> Das ist m.E. der falsche Ansatz. Wenn du beginnst, Tabellen zu ändern und Daten zu verschieben, dann kann die Datenbank anschließend nicht mehr mit dem Konverter PostNAS aktualisiert werden.
> Eine der "Besonderheiten" ist, dass die Datenbank nicht nur in einer einmaligen Konvertierung befüllt wird. Sondern sie kann im Rahmen eines NBA-Verfahrens auch periodisch mit Differenzdaten aktualisiert werden. Bei der Aktualisierung werden Änderungsdaten vom Konverter zunächst in die Tabelle "delete" eingetragen und lösen dort einen Trigger aus.
> Der Trigger ruft eine Function auf, die sich darum kümmert, veraltete Objekte mit einem Ende-Zeitstempel zu versorgen, wodurch sie als "nicht mehr aktuell" gelten. Trotzdem sind sie in den Daten noch vorhanden. Man muss bei der Auswertung darauf achten, keine Objekte mit Ende-Zeitstempel zu verwenden oder man muss die beendeten Objekte wirklich aus der Datenbank löschen, z.B. mit der Function "SELECT alkis_delete_all_endet();".
>
> Also: Tabellen bitte nicht ändern!
> Um "ax_aufnahmepunkt" mit einer Geometrie zu kombinieren brauchst du auch nicht Spalten verschieben oder Kopieren sondern nur "verbinden" (JOIN):
> https://www.postgresql.org/docs/9.4/static/explicit-joins.html
>
> SELECT ... FROM ax_aufnahmepunkt JOIN ... ON ... ;
>
> Das nennt man dann einen "VIEW" - eine neue Sicht auf die Daten.
> Den View kann man auch in der Datenbank speichern und dann "wie eine Tabelle" verwenden. https://www.postgresql.org/docs/9.4/static/sql-createview.html
>
> CREATE VIEW ap_mit_geom AS
> SELECT ... ;
>
> Funktionierende Views zum Thema "Aufnahmepunkt" in ALKIS sind z.B.:
>
> -- AP-Textposition
> SELECT a.punktkennung, p.art, p.wkb_geometry
> FROM ap_pto p
> JOIN ax_aufnahmepunkt a
> ON a.gml_id = ANY(p.dientzurdarstellungvon)
> WHERE a.endet IS NULL and p.endet IS NULL;
>
> Oder
>
> -- AP-Position
> SELECT a.punktkennung, p.wkb_geometry
> FROM ax_punktortau p
> JOIN ax_aufnahmepunkt a
> ON a.gml_id = p.istteilvon
> WHERE a.endet IS NULL and p.endet IS NULL;
>
>
> Eine Verbindung zwischen "ax_aufnahmepunkt" und "ap_ppo" konnte ich nicht herstellen.
>
> MfG
> Frank Jäger
>
>
>
> Von: Daniel Reimann [mailto:halle_saale(at)arcor(dot)de]
> Gesendet: Sonntag, 11. März 2018 08:08
> An: pgsql-de-allgemein(at)lists(dot)postgresql(dot)org
> Betreff: Erste Schritte
>
> Liebe Mitstreiter,
> ich gehe gerade meine ersten Schritte was PostgreSQL, PostNAS und QGIS.
> Entschuldigt bitte deshalb, wenn ich dumme Fragen stelle.
> Kurz meine Intention: Ich beschäftige mich damit, weil ich mittels dem norGIS-ALKIS-Import (https://www.norbit.de/68/) Kataster-ALKIS-Daten zunächst in eine PostgreSQL-Datenbank mit einer PostNAS-Erweiterung einlesen und anschließend in QGIS visualisieren möchte. Bzw. ist das erfolgreich erledigt. Nun möchte ich anfangen, mich etwas mit den Daten zu beschäftigen, mit SQL, sofern nötig. Habt ihr dazu Tipps, wie ich mich dem Thema sinnvoll nähere?
> Ich nutze als Datenbankmanager pgadmin 4. Und da hätte ich eine erste konkrete Frage:
> Ich habe in meiner Datenbank eine Tabelle ax_aufnahmepunkt, die mehrere Spalten enthält. Unter anderem auch eine Spalte "punktkennung".
> Da diese Tabelle keine Raumbezug enthält, nützt mir dort diese Info nichts. Ich möchte diese Spalte in die Tabelle ap_ppo einfügen.
> …
> Jetzt meine (Verständnis)Frage: Geht das auf einfache Weise über pgadmin? Ich kann ja eine neue Soalte in ap_ppo erstellen, aber wie generiere ich die Abfrage? Geht das so einfach und wie bekomme ich den entsprechenden SQL-Code dorthin (kopiert)?
> Herzlichen Dank, Daniel

In response to

Responses

Browse pgsql-de-allgemein by date

  From Date Subject
Next Message T S 2018-03-13 18:34:26 Re: Erste Schritte
Previous Message 2018-03-13 11:25:22 AW: Erste Schritte