JDBC - 在查询中重用绑定变量

时间:2013-05-10 21:33:33

标签: java jdbc spring-jdbc

我有一个类似下面的SQL stmnt,它抱怨因为我没有传入两个绑定变量。

有没有办法可以重用一个绑定变量,因为它们是相同的?

String sqlText = "SELECT * FROM person WHERE (name = UPPER(?) OR name = LOWER(?) )";

List<obj> results = tmplt.query(sqlText, new Object[]{name}, new objExtractor());

1 个答案:

答案 0 :(得分:7)

是。使用NamedParameterJdbcTemplate并为两个参数指定相同的名称:

SELECT * FROM person WHERE (name = UPPER(:param) OR name = LOWER(:param) )

有关如何在the documentation中使用此课程的更多说明。