问题标签 [spatialite]

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 投票
1 回答
56 浏览

sqlite - CastToDouble Spatialite 不投射负数

我正在使用空间数据库。我需要将一个负数加倍(这个数字是一个文本)。

当我这样做时SELECT CastToDouble("-5.84"),我得到一个 NULL ..

如何将文本格式的负数转换为 Double?

谢谢!

0 投票
4 回答
1735 浏览

python - 使用Sqlite函数InitSpatialMetaData()通过Python创建Spatialite数据库的性能问题

我正在通过创建一个动态数据库。上面的代码很好,但是当我在查询中使用函数InitSpatialMetadata()时,数据库的创建速度非常慢。
该文件以 0kb 开头,每秒增加 2-5kb 直到完全创建。所有过程大约需要 2-3 分钟才能完成,最终文件有 3mb。有人已经有这个问题了吗?

0 投票
0 回答
580 浏览

python - 如何处理来自空间数据库的几何数据

我正在做一个小型的地理项目,我在做一件事时遇到了小麻烦。我有一个空间数据库(SpatiaLite),其中存储了一些几何(它有几何列)。具体来说 - 多边形。它们当然作为 BLOB 对象存储在数据库中。现在我想查询数据库,检索这个几何对象并处理它,以便我可以稍后绘制它。在我看来,有两种方法可以做到这一点:要么提取原始 BLOB,然后以某种方式对其进行解码,要么使用 SpatiaLite AsText(几何)命令获取其众所周知的文本表示。结果将如下所示:

不太确定哪种方式更好,有什么建议可以解决这个问题吗?实现是在 Python 2.7 中完成的。

0 投票
2 回答
28915 浏览

c# - 在 SQLite + BEGIN TRANSACTION 中更新更快

这一个也与 spatilite 相关(不仅是 SQLite)

我有一个文件数据库xyz.db),我正在使用它SQLiteconnectionSQLiteconnection扩展至空间站)。

我有很多记录需要更新到数据库中。

上面的逻辑castarraylistArraylist包含需要处理到数据库中的值。

当我检查上面的代码时,1 分钟内更新了大约 400 条记录。

有什么方法可以提高性能吗?

注意 ::(文件数据库不是线程安全的)

2. 开始交易

假设我喜欢在 Spatialite 中使用单个事务运行两个(或数百万个)更新语句。这可能吗?

我在网上阅读并为我准备了以下声明(但没有成功)

上面的语句没有更新我数据库中的记录。SQLite 不支持 BEGIN TRANSACTION 吗?有什么我想念的吗?

如果我需要运行单独的语句,那么如上所述更新需要花费太多时间......

0 投票
4 回答
1189 浏览

c# - SQLite 数据库 (.db) 的性能问题

我遇到了性能问题SQLite database (.db)

我正在尝试更新数据库 (.db) 中的 1,00,000 条记录,这大约需要 50 分钟。太慢了。

我的代码如下::

这里每个 castarraylist 包含 5000 条记录。使用事务更新到数据库中。所以循环遍历20次并完成全部更新。虽然我手动检查时间,但它会在每次迭代中增加 5000 条记录的时间。喜欢

为什么会发生这种情况我无法理解。我用 C# 编写的源代码和我的笔记本电脑配置是i5 2.6 GHz, 4 GB RAM, 500 GB HD.

我建立了如下连接::

(*fullpath - 是我的数据库路径)

我正在创建如下表...

sqlquery2="Select LINK_ID from RDF_LINK string createLinkToPoly = "create table temp2 AS " + sqlquery2;

这将创建一个表并插入由 sqlquery2 通过的记录。

下面的语句扩展了 SQLite 上的 Spatialite

ExecuteStatement("select load_extension('spatialite.dll')", con);

我的Update陈述如下::

UPDATE temp2 SET GEOM = Transform(LineStringFromText('LINESTRING(4.38368 51.18109,4.38427 51.18165)',4326),32632)WHERE LINK_ID= 53841546

所以这种100000条语句在不同的线程中构建并插入LIST

最后执行UPDATE上述代码中的语句(现在使用 Larry 建议的代码)

0 投票
1 回答
667 浏览

linux - 使用 java 的 libspatialite.so spatialite 加载扩展

我按照此链接安装 Spatialite。

如何在我的 Java 代码中使用 spatialite 安装?我为空间功能加载哪个扩展

addGeometry()(Linux / Ubuntu)

在windows中我试过这个并且它有效但不适用于Ubuntu:

0 投票
1 回答
86 浏览

spatialite - 在 Spatialite 中找到 DE-9IM 矩阵?

有没有办法使用空间函数找到 DE-9IM 矩阵?

我意识到可以使用相关()函数来确定两个几何图形是否匹配一个矩阵,但我想获得矩阵。

我发现在尝试确定 JOIN ON INTERSECTS(); 中是否有条子等时检查 DE-9IM 矩阵很有用。

http://en.wikipedia.org/wiki/DE-9IM

http://postgis.net/docs/manual-1.4/ST_Relate.html

0 投票
1 回答
180 浏览

sqlite - 将 MapServer 从带有 Apache 的 Linux 切换到带有 IIS 的 Windows。空白 PNG 响应

我有一个有趣的问题,我已经研究了几天了,在 Windows 中,我得到一个空白的 png 响应,但是在具有几乎相同地图文件的 linux 中,我得到了预期的输出。我在 Linux 中使用 Apache 作为 WMS 服务器设置了 MapServer,它运行良好,但是我很遗憾需要切换到 Windows 和 IIS。

我有一个小型 sqlite 数据库,其中包含我试图让 MapServer 显示的一堆点。我在 linux 和 windows 中使用相同的 sqlite 数据库。

这是Linux设置:(有效)

sqlite db上的ogrinfo:

当我使用以下命令运行 shp2img 时,我得到了预期的 png:

地图文件:http ://hastebin.com/iyerudipes.vhdl

我用来访问的 URL:

如果您点击该链接,您可以看到它显示出来。有了这个设置,一切都按预期工作。

Windows 设置:(不工作)

sqlite db上的ogrinfo:

当我在 Windows 机器上运行 shp2img 时,我的数据库中的每个点都得到以下信息:

请注意,我在 Linux 中使用等效命令没有收到任何错误。

地图文件:http ://hastebin.com/subabefuxo.vhdl

和我使用的网址:

最后,调试文本:

关于为什么这会在我的 Linux 服务器上运行而不是在我的 Windows 服务器上运行的任何想法?我不知所措。

0 投票
1 回答
547 浏览

sqlite - mapnik + sqlite 启用了 spatialite 扩展

我可能需要有经验的 unix 用户的帮助。据我了解,mapnik库默认只使用常见的sqlite3库。虽然 mapnik 支持空间 sqlite 数据库,但 spatialite 必须是 sqlite 的静态链接扩展。

我发现了包括 sqlite 的空间融合。但我需要它的另一种方式——包含空间的sqlite。

我能否获得一些关于如何将 spatialite 作为静态库链接到 sqlite 的简要说明?或者是否可以将 mapnik 与空间融合而不是 sqlite 联系起来?

我在 Ubuntu 14.04 和 Mavericks 上工作。

空间资源:

https://www.gaia-gis.it/spatialite-2.3.0/amalgamation.html

https://www.gaia-gis.it/spatialite-2.3.0/libspatialite-amalgamation-2.3.0.tar.gz

谢谢!

0 投票
4 回答
184816 浏览

sqlite - 如何打开 .SQLite 文件

我正在尝试在 Windows 上打开一个 .sqlite 文件,但我不知道如何打开。你知道一个好的程序吗?

它包含用于统计分析的数据,但我更喜欢使用 .txt 文件。

我也有一个 .spatialite 文件。你能帮助我吗?