【问题标题】:nested exception is java.sql.SQLException: No value specified for parameter 6嵌套异常是 java.sql.SQLException: No value specified for parameter 6
【发布时间】:2016-04-07 01:54:01
【问题描述】:

当我尝试更新数据库中的记录时出现错误。我相信错误是通过尝试在输入中接受 6 个值来解决的,但是在更新记录时我只使用其中的 5 个。我需要使用 eventId 来更新特定条目的数据库记录。我不想更改 eventId,而只想删除该事件。我的表按以下顺序设计——eventId、eventTitle、roomId、eventInfo、startDate、endDate。我得到的错误是

嵌套异常是 java.sql.SQLException: No value specified for 参数6

public void updateEvent(int eventId, String eventTitle, int roomId, String eventInfo, String startDate, String endDate) {
 String SQL = "UPDATE Event SET eventTitle = ?, roomID = ?, eventInfo = ?, startDate = ?, endDate =? WHERE eventId = ?";
  jdbcTemplateObject.update(SQL,eventTitle,roomId,eventInfo,startDate,endDate);
  System.out.println("Updated Event with eventID = " + eventId );
  return;    
}

【问题讨论】:

  • 对不起,我忘了说我使用的是 MySQL 数据库。

标签: java mysql spring


【解决方案1】:

您在这里缺少 eventId:

jdbcTemplateObject.update(SQL,eventTitle,roomId,eventInfo,startDate,endDate,eventId);

【讨论】:

  • 但是,如果我在其中添加 eventId,它运行时是否也不会更新 eventID?我只需要更新事件信息。
  • 我觉得自己很愚蠢。是的,它有效,我认为它会更新 eventID。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-10
  • 1970-01-01
  • 2015-06-21
  • 2015-07-10
  • 1970-01-01
  • 2018-12-05
相关资源
最近更新 更多