我需要将一个外部dbf表链接到一个现有的PostgreSQL数据库中。我设法将该表导入PostgreSQL,但这会创建一个副本,并因此产生冗余数据。dbf表是shapefile的属性表,但我不需要它的空间方面。该练习是将数据从MS Access数据库移动到PostgreSQL的项目的一部分,希望数据能够从QGIS访问。dbf表目前链接到MS Access数据库中,并用于我想在PostgreSQL中重新构建的查询(视图(。我发现了很多关于将dbf表导入的帖子,但没有任何关于链接dbf表的帖子。我得到的最接近的是外部数据包装器,但我没能把它用于我的目的。我使用的是带有pgAdmin 4.24的PostgreSQL。
非常感谢
该练习是将数据从MS Access数据库移动到PostgreSQL的项目的一部分,希望数据能够从QGIS访问。
如果你必须使用PostgreSQL才能从QGIS访问你的空间数据,我看不到除了将shapefile导入PostgreSQL(PostGIS(之外的其他选择。如果出于任何原因不需要几何图形,可以将importing the shapefile
之后的几何图形列放入数据库:
ALTER TABLE table_name DROP COLUMN column_name;
替代方案:
如果我们谈论的是静态的shapefile,而你真的不需要使用PostgreSQL,那么你可以使用GeoServer
通过Web Feature Service
(WFS(发布这个shapefile——这至少是我在小项目中所做的。最简单的选择是将shapefile复制到所谓的GeoServer Data Directory
中,然后发布它们。之后,您可以使用其WFS Client
访问QGIS中的数据。