【问题标题】:Importing shapefile is failed导入 shapefile 失败
【发布时间】:2021-03-02 10:10:22
【问题描述】:

我是 PostGIS 的初学者。我正在尝试将 shapefile 导入 PostGIS。但是文件没有被导入。我该如何解决这个问题?

【问题讨论】:

  • 欢迎来到 SO。您愿意向我们展示您是如何尝试导入数据的吗?
  • 我猜不是
  • 我上传了ss。
  • 你能在qgis中打开这个shapefile,另存为另一个shapefile并再次导入吗?似乎 dbf(toc 文件!)已损坏或无法读取。

标签: postgresql postgis shapefile esri


【解决方案1】:

您正在尝试使用 Shapefile 导入器导入 CSV。要导入 CSV 文件,首先创建一个与 CSV 文件结构相对应的表,例如根据您的 CSV:

CREATE TABLE t (
  a INT,
  b TEXT,
  c TEXT,
  d TEXT,
  e TEXT,
  f TEXT,
  g TEXT,
  lat NUMERIC,
  long NUMERIC,
  j INT
);

然后使用psql之类的工具导入:

$ cat fastfoodmaps_locations_2007.csv | psql -d yourdb -c "COPY t FROM STDIN CSV;"

或者直接使用psql 连接到您的数据库并从那里运行

\copy t FROM C:\path_to_csv_file\fastfoodmaps_locations_2007.csv CSV

.. 然后你会看到你的数据:

SELECT * FROM t LIMIT 5;
 a | b |             c             |     d     | e  |   f   |       g        |   lat   |   long   | j 
---+---+---------------------------+-----------+----+-------+----------------+---------+----------+---
 1 | b | 3601 N.W. 27th Avenue     | Miami     | FL | 33142 | (305) 638-3838 | 25.8092 |   -80.24 | 0
 2 | b | 8995 N. W. 7th Avenue     | Miami     | FL | 33150 | (305) 754-8453 | 25.8587 | -80.2094 | 0
 3 | b | 30390 South Dixie Highway | Homestead | FL | 33030 | (305) 247-7181 | 25.4849 |  -80.461 | 0
 4 | b | 7975 N. W. 27th Avenue    | Miami     | FL | 33147 | (305) 836-8152 | 25.8471 | -80.2415 | 0
 5 | b | 9201 South Dixie Highway  | Miami     | FL | 33156 | (305) 666-1130 | 25.6849 | -80.3125 | 0

【讨论】:

    猜你喜欢
    • 2011-12-25
    • 2012-02-22
    • 2016-04-07
    • 2018-03-17
    • 2020-03-04
    • 2014-03-28
    • 2016-07-14
    • 2018-06-07
    • 2017-06-14
    相关资源
    最近更新 更多