【发布时间】:2017-02-26 19:53:27
【问题描述】:
我想用几何数据类型更新表格列中的数据。我有一个 GIS Web 服务,它返回带有 X 和 Y 值的 JSON 响应。我已经从 JSON 中检索了这些值以及其他字符串和 Int 数据类型列所需的其他值。应用程序中的 Java 代码运行良好,但我的问题是如何使用“几何”数据类型“更新”数据。
在数据库中有一些样本数据,格式如下“0x346C0000010CFFC7C50034B01B41BC2D52FF8F660941”。我不知道如何使用 preparestatement 以这种格式设置 X&Y 数据。任何见解或建议都会有所帮助。
在做了一些研究后,我知道如何查询和转换这些数据,但不知道在我的程序中要做什么。
SELECT Shape.STX as x ,Shape.STY as y from Test
WHERE ID=14082
更新
"Insert INTO Test(column1, Column2, Column3, Column4, geom)
VALUES (?, ?, ?, ?,ST_GeomFromText(?, 2100));"
pst.setString(5,"POINT("+lat+" "+log+")" );
我现在找到了这个解决方案,但我不知道上述查询中的“2100”是什么意思。也许是错的,我现在没有设置,但如果我找到任何关于更新查询的解决方案,我会更新这篇文章。同时,如果有人有任何解决方案,请随时更新帖子。
【问题讨论】:
-
找到带有“STPointFromText”的东西是正确的方向吗?
-
我可以为“STPointFromText”使用标准 JDBC 驱动程序吗?是否有任何其他方法可以从标准 JDBC 驱动程序中使用,如果我不能使用此方法,它将执行与 ST_GeomFromText 相同的结果。
标签: java sql-server prepared-statement gis