当尝试使用带预备语句的where子句在表(事件)中设置值时,我的sql语法错误 这是代码`
public void setEventParticipants(int id, String eventParticipants)
{
try {
String req1="insert into events (eventParticipants) values(?) where (eventId)=?";
PreparedStatement pre = c.prepareStatement(req1);
pre.setString(1, eventParticipants);
pre.setInt(2, id);
pre.executeUpdate();
} catch (SQLException ex) {
Logger.getLogger(EventService.class.getName()).log(Level.SEVERE, null, ex);
}
}`
我收到此错误: 您的SQL语法有误;检查与您的MySQL服务器版本对应的手册以获取正确的语法,以在第1行的'where(eventId)= 7'附近使用 谢谢您的帮助
答案 0 :(得分:1)
更改此
insert into events (eventParticipants) values(?) where (eventId)=?
为此
UPDATE events SET eventParticipants = ? WHERE eventId = ?
如果您执行插入语句,它应该填充您的表
答案 1 :(得分:1)
代替INSERT INTO table_name VALUES(值1,值2,值3,...); 尝试 更新表名 SET列1 =值1,列2 =值2,... 条件在哪里; 要么 插入表名称 值(&value1,&value2,&value3,...);
答案 2 :(得分:0)