开源WebGIS实施方案(三):Shapefile数据导入到PostGIS
2024-09-27 23:33:51
PostGIS新版中提供了一个可视化的工具,用于Shapefile数据的导入和导出,极大的方便了使用者的操作。
创建空间数据库
以具有创建用户权限的账号登录pgAdminIII,连接到数据库
创建一个数据库
对于空间数据的存储,需要为该数据库指定postgis模板。
如果有postgis模板,直接指定就行;但不幸的是,这个版本并没有对应的postgis模板。所以需要手动处理一下:先建立普通类型的数据库,再按照下列SQL扩展该数据库,以支持PostGIS。
-- Enable PostGIS (includes raster)
CREATE EXTENSION postgis;
-- Enable Topology
CREATE EXTENSION postgis_topology;
-- Enable PostGIS Advanced 3D
-- and other geoprocessing algorithms
-- sfcgal not available with all distributions
CREATE EXTENSION postgis_sfcgal;
-- fuzzy matching needed for Tiger
CREATE EXTENSION fuzzystrmatch;
-- rule based standardizer
CREATE EXTENSION address_standardizer;
-- example rule data set
CREATE EXTENSION address_standardizer_data_us;
-- Enable US Tiger Geocoder
CREATE EXTENSION postgis_tiger_geocoder; CREATE EXTENSION ogr_fdw;
CREATE EXTENSION pgrouting;
CREATE EXTENSION pointcloud;
CREATE EXTENSION pointcloud_postgis;
扩展之后,执行以下语句,确认是否成功。
select postgis_full_version();
导入Shapefile数据
启动PostGIS下的该GUI工具,连接到目标空间数据库,连接成功会有相关提示信息。
导入shp数据,点击Add File,在对话框中选择对应的Shapefile;设置相关参数后,点击Import将Shapefile导入到PostGIS数据库。导入成功时,会有相应提示信息。
值得注意的是:使用该工具进行Shapefile入库时,Shapefile完整的路径名称中不可以含有中文字符,但Shapefile内部数据信息(如字段名、属性值)是可以使用中文字符的。
在PostgreSQL中查询
uDig中加载PostGIS中图层效果
最新文章
- repeater控件如何隐藏列?
- java中调用xml的方法:DocumentBuilderFactory
- JDBC连接数据库演示
- 5ucms后台调用标签
- Var To DataTable
- EnumWindows 使用
- Need a code of lazy load for div--reference
- 【nodejs学习】3.进程管理及异步编程
- javascript的预编译和执行顺序
- php-迭代创建级联目录
- nyoj1204 魔法少女 线性DP
- 剑指Offer-对称的二叉树
- MyBatis之ResultMap简介,关联对象
- OpenGL Shader Key Points (1)
- JavaScript中的classList的使用
- Python+Appium学习篇之WebView处理
- 洛谷P1226 【模板】快速幂||取余运算
- 2018年12月25日 圣诞节快乐 生成器plus
- 49_分析代理类的作用与原理及AOP概念
- docker安装jenkins及其相关问题解决