加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

PostgreSQL:SHP入库,并进行投影转换

发布时间:2020-12-13 17:41:41 所属栏目:百科 来源:网络整理
导读:1.首先,将shp文件转成sql语句:(指明了数据的原始投影) shp2pgsql -W gbk -s 4610 -g _geo sample.shp tb_samplesample.sql 2. 执行上一步生成的sql文件,将数据入库: psql -d DbName -f sample.sql -U postgres 3. 进行投影转换: --select * from geom

1.首先,将shp文件转成sql语句:(指明了数据的原始投影)

shp2pgsql -W gbk -s 4610 -g _geo sample.shp tb_sample>sample.sql


2. 执行上一步生成的sql文件,将数据入库:

psql -d DbName -f sample.sql -U postgres


3. 进行投影转换:

--select * from geometry_columns; --查看下geometry_columns表里记录的投影信息
alter table tb_sample add column _geo1 geometry; --添加一个字段,用以存储投影后的信息
update tb_sample set _geo1=st_transform(_geo,900913); --进行投影转换,将入库时的4610(原投影)投影为90013(目标投影)
update geometry_columns set srid=900913 where f_table_name=‘tb_sample'; --更新系统表里的信息
alter table tb_sample drop column _geo; --删除原字段
alter table tb_sample rename _geo1 to _geo; --更新字段名

自此,投影完成,搞定。。。。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读