所以在PostgreSQL中,我有一组long / lat的几何值,格式如下:
0101000020E610000095B9F94674CF37C09CBF0985083B5040
所以在Postgres中,我可以创建一个格式化Ex的所有查询。
SELECT ST_AsText(position_geom)FROM reports;
所以我在eclipse
中安装了postgreSQL和PostGIS JDBC驱动程序,并认为我可以做类似的事情
rs = stmt.executeQuery("SELECT ST_AsText(*)FROM reports");
while(rs.next()){
String geomVal = rs.getString("position_geom");
System.out.println(geomVal);}
但我得到了一个错误:
function st_astext() does not exist.
我已导入所有postGIS
个扩展程序,只是想知道是否有人有想法。
答案 0 :(得分:3)
格式是扩展的已知二进制文件(EWKB),这是PostGIS用于在PostgreSQL中存储geometry
数据的内容。 ST_AsText()
函数将其转换为已知文本(WKT)格式。
ST_AsText()
函数需要一个具有geometry
数据类型的列。所以改变你的代码如下:
rs = stmt.executeQuery("SELECT ST_AsText(position_geom) AS position_txt FROM reports");
while(rs.next()){
String geomVal = rs.getString("position_txt");
System.out.println(geomVal);}