次のJDBCコードがあります。私はそれが私が唯一そこに2つのパラメータを持っていると考えていることを理解PreparedStatementがPostGIS地理のすべてのパラメータを読み取っていません
org.postgresql.util.PSQLException: The column index is out of range: 3, number of columns: 2.
、しかし:
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());
...
私は、コードの最後の行に次の例外を取得しています:私は、PostGISの地理を使用しようとしていることに注意してくださいあなたはそこに私が10であることを意図しているのを見ることができます。私はPOLYGON
の中のパラメータを読んでいないのはなぜわかりません。私は、このSQL文がデータベースで直接使用されている場合には動作することを知っていますが、Javaコードで動作させるために何を変更する必要があるのか分かりません。何か案は?
ああ、私は理解しています。非常に明確な説明をありがとうございます。それは有り難いです。 – Steph