1
我正在使用Spring-JDBC來執行SQL並獲取結果。PreparedStatement - 不綁定所有參數
SELECT
SUM(spend) total_sum
FROM TABLE_NAME
WHERE
sup_id = ? AND
((YEAR = ? AND period IN (?)) OR
(YEAR = ? AND period IN(?)))
和綁定變量的傳遞:
final Object[] paramMap = { "1234", "2010",
"'01_JAN','02_FEB','03_MAR'", "2009", "'11_NOV','12_DEC'" };
final List<LeadTimeDto> query = getJdbcTemplate().query(sql, paramMap,
new RowMapper<LeadTimeDto>() {
@Override
public LeadTimeDto mapRow(final ResultSet resultSet,
final int arg1) throws SQLException {
final LeadTimeDto leadTimeDto = new LeadTimeDto();
final String string = resultSet.getString("total_sum");
System.out.println("ltime = " + string);
leadTimeDto.setLeadTime(string);
return leadTimeDto;
}
});
我不知道這裏發生了什麼。我遇到了THIRD參數綁定的問題。 如果我在查詢本身寫下第三個參數的值,如下所示。
如果是quotes(')的問題,那麼FIFTH參數應該也是問題。但它具有約束力。
我試過使用getNamedParameterJdbcTemplate()以及Map和Bean,但沒有運氣。
你得到什麼錯誤? – 2010-11-25 08:25:10
你有沒有遇到異常?如果是的話發佈 – 2010-11-25 08:26:48