前言
现在大部分数据库都支持地理空间的数据存储,可以方便的与GIS平台调用,比如Geoserver、ArcGis,
但是如果使用不规范的空间表去发布图层预览可能会出现各种问题,比如坐标系错误,无法聚焦。
本文将举例最常见的SQLServer和PostgreSQL的地理空间数据导入与查询
1,使用QGIS导入地理数据
1.1 连接数据库
打开QGIS后导航就能找到数据库选项,右键新建连接
Postgresql连接配置
SQLServer连接配置
1.2 往数据库导入图层
首先在QGIS打开要导入的图层数据,拖到地图上
然后点击顶部菜单的数据管理
2,使用ArcGIS Pro导入地理数据
2.1 连接数据库
第一次连接选新数据库连接,新建好会生成一个包含数据库连接信息的sde文件,已有sde文件的直接选第一个添加数据库选项
2.2 往数据库导入图层
右键数据库选择导入,选择已添加的图层后点击底部运行
3,数据库空间表查询
3.1 SQLServer 查询
查询数据库中的每张空间表的空间字段
SELECT TABLE_NAME,COLUMN_NAME,DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE DATA_TYPE='geometry' OR DATA_TYPE='geography'
按照经纬度样式查询数据 STAsText()
select geometryColums.STAsText () AS geometryColums from MYTABLE
3.2 PostgreSQL 查询
查询数据库中的每张空间表的空间字段
SELECT * FROM geometry_columns
按照经纬度样式查询数据 ST_AsText()
select ST_AsText(columns) as columns from MYTABLE