Wenn ein kvwmap-Layer eine Geometrie haben soll, wird datenbankseitig ein Geometry-Attribut angelegt. Grundsätzlich: * Geometrie-Attribut mittels SQL anlegen, nicht mit dbeaver. * Die Angabe des Datentyps geometry reicht **NICHT** aus, es müssen **IMMER** EPSG und Geometrietyp angegeben werden. Ein Geometrie-Attribut wird nach Anlegen der Tabelle mit separatem SQL angelegt oder - wenn die Tabelle per CREATE TABLE angelegt wird - im SQL selbst: SELECT AddGeometryColumn('schema', 'tabelle','the_geom',25833,'MULTIPOLYGON', 2); -- Geometrietyp immer in '...'; Groß-/Kleinschreibung wird ignoriert -- bzw. CREATE TABLE . ( -- ..., the_geom geometry(multipolygon, 25833) NOT NULL -- Geometrietyp kann auch in '...' geschrieben werden; Groß-/Kleinschreibung wird ignoriert ); * Der Name des Geometrie-Attributs ist egal. Üblicherweise:"the_geom". * Wenn es keine anderen Gründe gibt, sollte immer //EPSG 25833// verwendet werden. Hinweis: Die EPSG 35833 und EPSG 2398 gibt es nicht (mehr) - falls nicht anders möglich, die offiziellen EPSG 5650 bzw. EPSG 5674 verwenden! * Als Geometrietyp müssen //MULTIPOLYGON// bzw. //MULTILINE// eingetragen werden. POLYGON oder LINE nur dann, wenn gesplittete Geometrien unbedingt verhindert werden sollen. * Bei Punktgeometrien wird immer POINT angegeben. * Der genannte Befehl darf kein "true" oder "false" nach der "2" am Ende enthalten! Außerdem sollte immer ein Index auf das Geometrie-Attribut gelegt werden: CREATE INDEX gist_ ON . USING gist (the_geom); sollte der Name der Tabelle sein, möglicherweise etwas abgekürzt. Außerdem sollte das Geometrie-Attribut **immer** auf NOT NULL gesetzt werden. Einzige Ausnahme: Es ist abzusehen, dass es auch Datensätze ohne Geometrie geben wird. Dieser Fall muss auf jeden Fall mit dem Datenherrn besprochen werden! ALTER TABLE . ALTER COLUMN the_geom SET NOT NULL; Einfacher ist es hier aber, das NOT NULL über dbeaver in den Spalteneigenschaften zu setzen. ---- **Geometrie-Attribute nicht über dbeaver als "geometry" anlegen!** **Keine Constraints außer NOT NULL erzeugen!** **NOT NULL nicht vergessen!**