关于postgis导入导出shp文件数据的一点心得,可以复制正文到记事本并保存成bat文件

@echo 解决postgis导出时中文乱码的问题 ==》在环境变量中设置PGCLIENTENCODING=GBK
@echo -s 投影编号  如果不设置这个则默认是0
@echo -W 编码格式  默认是UTF-8,国内的shp文件一般都是GBK
@echo -S 简单图元  把multi数据转成简单图元  如multiPolygon 转成 Polygon

@echo -a 向现有的表中插入,表必须存在 -d 删除现有的表,并重新创建进行插入 -c 创建表并进行插入 -p 只进行表的创建


::shp2pgsql -s 4326 -W GBK 交警闭路电视.shp sdcity.jjblds>交警闭路电视.sql
::shp2pgsql -s 4326 -W GBK 主干道封闭面.shp sdcity.zgdfbm>主干道封闭面.sql
::shp2pgsql -s 4326 -W GBK 主干道中心线.shp sdcity.zgdzxx>主干道中心线.sql
::shp2pgsql -s 4326 -W GBK 交警闭路电视.shp sdcity.jjblds| psql -U postgres -w -d test_postgis


::@echo 导入测试
::shp2pgsql -s 4326 -a -W GBK 交警闭路电视.shp sdcity.jjblds>交警闭路电视.sql
::psql -U postgres -w -d test_postgis -f 交警闭路电视.sql -e
::@echo 如果导入失败,请检查schema是否存在
::@echo 导出测试
::pgsql2shp.exe -f jjblds -P baitfk -u postgres test_postgis sdcity.jjblds


@echo 删除并更新  点数据
shp2pgsql -s 4326 -d -W GBK 交警闭路电视.shp sdcity.jjblds| psql -U postgres -w -d test_postgis
@echo 尝试创建  线数据
shp2pgsql -s 4326 -p -W GBK 主干道中心线.shp sdcity.zgdzxx|psql -U postgres -w -d test_postgis
@echo 数据追加  线数据
shp2pgsql -s 4326 -a -W GBK 主干道中心线.shp sdcity.zgdzxx|psql -U postgres -w -d test_postgis


@echo 尝试创建  面数据
shp2pgsql -s 4326 -p -W GBK 主干道封闭面.shp sdcity.zgdfbm|psql -U postgres -w -d test_postgis
@echo 数据追加  面数据
shp2pgsql -s 4326 -a -W GBK 主干道封闭面.shp sdcity.zgdfbm|psql -U postgres -w -d test_postgis
pause

你可能感兴趣的:(GIS,schema,测试)