【发布时间】:2011-09-19 22:26:18
【问题描述】:
我有以下 JDBC 代码。请注意,我正在尝试使用 PostGIS 地理:
PreparedStatement stmt = db.prepareStatement("INSERT INTO " +
"source_imagery (image_path, boundary, image_time)" +
" VALUES (?, ST_GeographyFromText('POLYGON((" +
"? ?, ? ?, ? ?, ? ?))'), ?)");
stmt.setString(1, file.getAbsolutePath());
stmt.setDouble(2, bounds.getY());
stmt.setDouble(3, bounds.getX());
...
最后一行代码出现以下异常:
org.postgresql.util.PSQLException: The column index is out of range: 3, number of columns: 2.
我知道它认为我在那里只有 2 个参数,但您可以看到我打算有 10 个。我不确定为什么它没有读取 POLYGON 中的任何参数。我知道如果我直接在数据库中使用这个 SQL 语句,它就可以工作,但我不确定我必须改变什么才能使它在我的 Java 代码中工作。有什么想法吗?
【问题讨论】:
标签: java database postgresql jdbc postgis