尝试使用带有准备好的语句的 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' 附近使用正确的语法 感谢您的帮助
3 回答

精慕HU
TA贡献1845条经验 获得超8个赞
改变这个
insert into events (eventParticipants) values(?) where (eventId)=?
至此
UPDATE events SET eventParticipants = ? WHERE eventId = ?
如果您执行插入语句,它应该填充您的表

慕少森
TA贡献2019条经验 获得超9个赞
而不是 INSERT INTO table_name VALUES (value1, value2, value3, ...); 尝试使用 UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE 条件;或 INSERT INTO table_name VALUES (&value1, &value2, &value3, ...);
添加回答
举报
0/150
提交
取消