首页 > 解决方案 > Preparestatement不适用于连续问号

问题描述

我有这样的查询: select domain, hits from temp order by domain desc limit 10 offset 0; 现在通过 JDBC 和准备好的语句运行,我的查询转换为:

String prepareselectSQL="select domain,hits from temp order by ? ? limit ? offset ?;";

 PreparedStatement preparedStatement = null;
preparedStatement = connection.prepareStatement(prepareselectSQL);
preparedStatement.setString(1, "domain");
preparedStatement.setString(2, "desc");
preparedStatement.setInt(3, 10);
preparedStatement.setInt(4, 0);

ResultSet rs = preparedStatement.executeQuery();

现在上面的代码给了我一个错误:

org.postgresql.util.PSQLException:错误:“$2”处或附近的语法错误

请对此提供帮助,我将如何在准备语句中使用连续的问号。

标签: javapostgresqljdbcprepared-statement

解决方案


推荐阅读