【发布时间】:2020-09-17 19:44:12
【问题描述】:
我需要将外部 dbf 表链接到现有的 PostgreSQL 数据库。我设法将该表导入 PostgreSQL,但这会创建一个副本并因此产生冗余数据。 dbf 表是 shapefile 的属性表,但我不需要它的空间方面。 该练习是将数据从 MS Access 数据库移动到 PostgreSQL 的项目的一部分,希望随后可以从 QGIS 访问数据。 dbf 表目前已链接到 MS Access 数据库并用于我想在 PostgreSQL 中重新构建的查询(视图)。 我发现很多关于将 dbf 表导入的帖子,但没有任何关于链接 dbf 表的帖子。我得到的最接近的是 Foreign Data Wrapper,但我没有设法将它用于我的目的。我正在使用 PostgreSQL 和 pgAdmin 4.24。
非常感谢
【问题讨论】:
-
如果你为它写一个foreign data wrapper 是的。除了可以使用基于 ODBC 的 dBase 驱动程序的 ODBC FDW 之外,没有看到现有的。
-
我所知道的最接近的是pgsql-ogr-fdw。但它适用于整个 shapefile。
-
就个人而言,我会尝试完全消除 shapefile 并将所有内容存储在 postgresql / postgis 中。对我来说,这是 postgres 的主要好处 - 您可以替换 Access 和 shapefile,在一个地方管理所有数据,并使用链接到 postgres 的 QGis 来可视化您的数据。
-
嗨,Brian 和 Adrian,我担心有人会建议 fdw。我已经看过它,但没有设法让它对我有用。理想情况下,我会在某处找到一个 dbase 文件的示例。我会进一步调查,可能会提出更多问题。
-
您好,不幸的是,到目前为止,我所看到的 PostgreSQL 无法替代 Access。 PostgreSQL 只是一个没有前端(表单等)的数据库后端。我将把它用作我的 MS Access 数据库的后端,这样数据就可以通过 PostgreSQL 提供给 QGIS 和其他非 MS 世界。当我确定我可以在 QGIS 中执行我在 ArcView 中可以执行的操作时,我可能会在某个时候将 shapefile 传输到 PostgreSQL。
标签: postgresql postgis dbase