1

以下のような SQL stmnt がありますが、2 つのバインド変数を渡していないため、不平を言っています。

それらは同じであるため、1つのバインド変数を再利用する方法はありますか?

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

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

1 に答える 1

7

はい。NamedParameterJdbcTemplateを使用して、両方のパラメーターに同じ名前を割り当てます。

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

このクラスの使用方法の詳細については、ドキュメントを参照してください。

于 2013-05-10T21:35:48.763 に答える