如何解决运算符不存在:字符变化= ?, postgres JDBC占位符不起作用
此方法有问题。假设从数据库中返回问题,其中章节编号指示要返回的问题。
正在返回:
错误:运算符不存在:字符变化=? 提示:没有运算符匹配给定的名称和参数类型。您可能需要添加一个显式的类型转换。
尝试了投射,但没有任何效果。似乎正在使用占位符“?”即使不是双引号也可以将其作为文字值。
正在从前端传递参数,但会抛出错误:500内部服务器错误,我猜是因为“操作员不存在”。
不确定从何处去,因此我们将不胜感激。
p.s。之前传递的参数是Integer,但是再次要求我将其强制转换,因此更改为String,并将Db列数据类型从smallint更改为VARCHAR,以尝试获得某种数据类型的兼容性,但到目前为止还没有。也许可以解决问题,但我不确定如何自己解决问题。
public List<Question> selectQuestionsByChapterNumber(String chapternumber) {
final String sql= "SELECT question FROM chapter_questions WHERE chapternumber=?";
return jdbcTemplate.query(sql,(resultSet,i) ->{
return new Question(
resultSet.getInt("id"),resultSet.getString("chapternumber"),resultSet.getString("question"),resultSet.getString("answer"));
});
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。