问题标签 [postgis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
33091 浏览

sql - 使用 PostgreSQL 的多边形点的 SQL 查询

我有以下简单的表格:

然后我尝试用多边形插入一行:

并遇到此错误:

列“poly”属于多边形类型,但表达式属于几何类型

这是蹩脚的。所以我的第一个问题是:

  1. 我真的必须投吗?

无论如何,铸造后它可以工作。现在我正在尝试做一个简单的 ST_Contains 查询:

这给出了错误:

我应该做些什么?

以下作品:

但这可能是因为这两个参数都是几何类型的。针对表数据的实际查询不起作用。

回答:

多伊!问题是我创建的数据库不是基于postgis模板数据库(因此没有相关的功能和几何列表等)。最后,我可以说一下,PostGIS 要求您向数据库添加数百个函数、行和几个表的方式只是为了让您获得 GIS 支持,这完全是蹩脚的。它使模式的备份变得更加复杂并且非常容易出错(如果您忽略调用 AddGeometryColumn 而只是自己添加一个几何列,那么天堂是禁止的)。

0 投票
3 回答
874 浏览

postgis - PostGIS 几何支持

postgresql 的 postgis 可以支持像椭球这样的复杂几何类型吗?

0 投票
2 回答
2050 浏览

django - 使用 KML“shapefile”查询 PostGIS 数据库

我正在开发一个谷歌地图应用程序,它执行以下操作(在低缩放级别):

  1. 在地图上打印一堆多边形叠加层。这些多边形是根据我使用 Google 地球创建的 KML 文件创建的。基本上,这些多边形覆盖了大陆大小的地球块。其中15个覆盖了整个世界。

  2. 在每个多边形叠加层的顶部,会显示一个数字,表示该多边形内存在的点总数。

我想在地图上显示的点有一个代表国家的字段和一个纬度/经度字段。我得到总数的方法是按国家代码对每个多边形运行查询,如下所示:

如果我想有一个跨越一个国家的边界​​,或者如果我想重新组织我的多边形“扇区”,这不是很好。一个更好的解决方案是将 KML 文件提供给数据库(即 PostGIS)并为我整理好。这有可能吗?如果不是,那么如何将 KML 文件转换为既可以轻松插入 Google 地图可以通过 postGIS 查询的格式?

0 投票
3 回答
14025 浏览

postgresql - 如何使用 PostgreSQL 中的字段创建多边形?

我想组合成一个多边形的表中有 8 个实际值。不过,我无法弄清楚如何使用这些值创建多边形。我一直在尝试

但不断收到有关多边形函数不存在或多边形类型的输入语法无效的错误。有没有人这样做过?

0 投票
3 回答
10746 浏览

mysql - 为什么 PostgreSQL 在 Windows 上这么慢?

我们有一个使用 MySql 运行的应用程序。在我们发现MySql不支持PostGIS的一些GIS能力后,我们发现它并不适合我们的应用程序(注意:mysql只支持最小边界矩形GIS搜索)。

所以我们将数据库更改为 PostgreSQL。然后我们发现在 Windows 上运行的 Postgresql 8.2 与 Mysql 5.1 相比要慢得多。慢,我的意思是大约慢 4-5 倍。

为什么是这样?我们需要更改配置中的某些内容吗?

我从其他网站上找到了一些评论,例如:

更新:我们发现缓慢的原因是由于我们插入到数据库中的 BLOB。我们需要能够以 10-15 MB/s 的持续速率插入 BLOB。我们正在为我们插入/读取的每个 BLOB 使用 libpq 的 lo_read 和 lo_write。这是最好的方法吗?以前有没有人使用 Pgsql 以高速率插入大型 BLOB?

编辑:我听说 PgSql 最近才移植到 Windows。这可能是原因之一吗?

0 投票
1 回答
606 浏览

sql-server - 将 Postgis 表转换为 SQL Server 2008

有没有一种简单的方法可以做到这一点?

0 投票
2 回答
17151 浏览

postgresql - PostgreSQL 上 $libdir 的问题

简而言之,我的问题是“为什么 $libdir 在我的 PSQL 安装上不起作用”。

产生错误

尽管

工作正常。

的输出

似乎是正确的。

0 投票
7 回答
18316 浏览

postgresql - ogr2ogr 和 Postgis/PostgreSQL 数据库的编码问题

在我们的组织中,我们处理不同文件格式的 GIS 内容。我需要将这些文件放入 PostGIS 数据库,这是使用 ogr2ogr 完成的。问题是,数据库是 UTF8 编码的,文件可能有不同的编码。

我找到了有关如何通过向 org2ogr 添加选项参数来指定编码的描述,但显然它没有效果。

我收到的错误是:

目前,我的源文件是一个 Shape 文件,我很确定它是 Latin1 编码的。

我在这里做错了什么,你能帮帮我吗?

亲切的问候,卡斯帕

0 投票
2 回答
3773 浏览

postgresql - 在带有 MacPorts 的 Snow Leopard 上使用 postgresql84 和 postgis 时没有 liblwgeom

在升级到 Snow Leopard 后,我正试图让我的开发环境恢复运行。特别是,我需要 postgresql 和 postgis 工作,但我遇到了以下问题。

使用以下内容安装两者后:

当我尝试加载引用 liblwgeom.so 的 sql 数据库时,出现如下错误

该文件确实存在于我的计算机上,但必须是旧安装的 postgresql 8.3。问题是我不知道 liblwgeom.so 应该来自哪里。它不包含在 postgis 1.4 中,Google 搜索让我摸不着头脑。有任何想法吗?

0 投票
2 回答
2230 浏览

sql - 使用最近邻法在 PostGIS 中绘制一条线

这是我发送到 PostGIS 邮件列表的电子邮件中的交叉帖子

到目前为止,我在一个点和它在一条线上的投影位置之间创建一条线的努力已经很长了,但我快到了。截至昨天,在包括任何最近邻分析之前,我得到了这张图片中显示的结果:

QGis 截图

如您所见,粉红色的每个点都连接到所有投影点,而我只想将每个粉红色 x 连接到其各自的投影。

在 IRC 上,建议我使用BostonGIS 的最近邻法。我将函数输入到 PostgreSQL 并尝试失败,如下所述。我假设我的错误是由于错误的参数类型造成的。我玩弄了它,将一些列的类型更改为 varchar,但我仍然无法让它工作。

关于我做错了什么的任何想法?关于如何解决它的任何建议?

代码:

错误