使用JDBC在PostgreSQL中插入Point(Geometry)值

时间:2012-05-17 23:36:30

标签: java postgresql jdbc postgis postgresql-9.1

请给我一些代码示例来插入包含SQL语句的记录:

insert into TABLE 
(id, value1, value2, point, value3) 
values
(1,'A', 'M', POINT (13.45646, 56.61782),5); 
在JDBC / Postgresql代码中

如果有人有PreparedStatement的解决方案或任何其他有用的解决方案,那么非常欢迎!

1 个答案:

答案 0 :(得分:6)

在最简单的级别,您可以使用geometry constructors构建一个准备好的语句来传递参数。

insert into "TABLE"(id, value1, value2, point, value3)
values(1, $1, $2, ST_SetSRID(ST_MakePoint($3, $4), 4326)), $5);

$3$4是经度和纬度。


另请参阅PostGIS documentation for the JDBC interface,它可能对其他几何类型(LineString,Polygon,MultiPoint,MultiLineString,MultiPolygon)有用。