我从本地postgreSQL服务器将数据导入QGIS。加载到数据库中的数据集包含11个列,其中包括一个X列和一个Y列,它们位于CH1903 / LV03 ():EPSG:21781。我试图将这些点绘制成QGIS中的一个层,但是当我使用“Add PostGIS layer”导入它时,我必须单击“还列出没有几何图形的表”来找到它。一旦添加,它将显示为一个属性表,我可以进入图层属性并选择正确的CRS,但它仍然没有正确显示。

我仍然是QGIS和PostgreSQL的新手,我是做错了什么,还是需要在数据库中定义坐标,然后再将它们导入QGIS?
发布于 2018-03-07 16:23:57
您需要在表上创建几何图形。到目前为止,您只是显示一个不包含任何点的表,因此坐标系统甚至不适用。
因此,首先通过PostGIS AddGeometryColumn创建几何学列
SELECT AddGeometryColumn ('myschema','mytable','geom',21781,'POINT',2);然后用现有值更新这个新列。
UPDATE mytable SET geom = ST_SETSRID(ST_MakePoint(X, Y), 21781);https://stackoverflow.com/questions/49155328
复制相似问题