PostgreSQL/PostGIS: shp2pgsql INSERT 而不是创建一个新的 table
PostgreSQL/PostGIS: shp2pgsql INSERT instead of Creating a new table
你好我是 PostgreSQL/PostGIS 的新手,刚刚学习了如何将 Shapefile 转换为 SQL 文件并按照 this 教程使用 shp2pgsql 将其导入 PostGIS。我注意到,每当我转换 Shapefile 时,它都会生成一个包含 CREATE TABLE 语句的 SQL 文件。现在我的问题是,有没有办法或者甚至有可能将一个新的 Shapefile(带有一组新的层)插入到现有的 table 而不是创建一个新的?
希望我解释得很好。谢谢
您可以在命令行中使用追加选项。
像这样:
.\shp2pgsql.exe -c -I -g "geom" fistShpFile.shp
.\shp2pgsql.exe -a -g "geom" nextShpFile.shp
.\shp2pgsql.exe -a -g "geom" nextShpFile.shp
...
(-d|a|c|p) These are mutually exclusive options:
-d Drops the table, then recreates it and populates it with current shape file data.
-a Appends shape file into current table, must be exactly the same table schema.
-c Creates a new table and populates it, default if you do not specify any options.
-p Prepare mode, only creates the table.
http://www.bostongis.com/pgsql2shp_shp2pgsql_quickguide.bqg
或使用 shp2pgsql -?
其他选项。
你好我是 PostgreSQL/PostGIS 的新手,刚刚学习了如何将 Shapefile 转换为 SQL 文件并按照 this 教程使用 shp2pgsql 将其导入 PostGIS。我注意到,每当我转换 Shapefile 时,它都会生成一个包含 CREATE TABLE 语句的 SQL 文件。现在我的问题是,有没有办法或者甚至有可能将一个新的 Shapefile(带有一组新的层)插入到现有的 table 而不是创建一个新的?
希望我解释得很好。谢谢
您可以在命令行中使用追加选项。 像这样:
.\shp2pgsql.exe -c -I -g "geom" fistShpFile.shp
.\shp2pgsql.exe -a -g "geom" nextShpFile.shp
.\shp2pgsql.exe -a -g "geom" nextShpFile.shp
...
(-d|a|c|p) These are mutually exclusive options: -d Drops the table, then recreates it and populates it with current shape file data. -a Appends shape file into current table, must be exactly the same table schema. -c Creates a new table and populates it, default if you do not specify any options. -p Prepare mode, only creates the table.
http://www.bostongis.com/pgsql2shp_shp2pgsql_quickguide.bqg
或使用 shp2pgsql -?
其他选项。