У меня есть следующий код 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-коде. Есть идеи?