Java mysql新手,查询抛出错误语法
我试图从我的Java应用程序中传递这个查询,但是它说我在更新行中有一个错误,但是我找不到什么是错误的?你能看出我做错了什么吗Java mysql新手,查询抛出错误语法,java,mysql,Java,Mysql,我试图从我的Java应用程序中传递这个查询,但是它说我在更新行中有一个错误,但是我找不到什么是错误的?你能看出我做错了什么吗 int rs = st.executeUpdate("INSERT INTO timesheet (employeeID, statusCode, periodEndingDate, departmentCode, minutesMon,"+ "minutesTue, minutesWed, minutesThu, minutesFri, minu
int rs = st.executeUpdate("INSERT INTO timesheet (employeeID, statusCode, periodEndingDate, departmentCode, minutesMon,"+
"minutesTue, minutesWed, minutesThu, minutesFri, minutesSat, minutesSun)"+
" VALUES ('"+empID+"','"+statusCode+"','"+periodEndingDate+"','"+departmentCode+"','"+minutesMon+"','"+
minutesTue+"','"+minutesWed+"','"+minutesThu+"','"+minutesFri+"','"+minutesSat+"','"+minutesSun+"')"+
" ON DUPLICATE KEY UPDATE timesheet SET statusCode='"+statusCode+"', periodEndingDate='"+periodEndingDate+"', departmentCode='"+departmentCode+"',"+
" minutesMon = '"+minutesMon+"', minutesTue='"+minutesTue+"', minutesWed='"+minutesWed+"', minutesThu='"+minutesThu+"', minutesFri='"+minutesFri+"',"+
" minutesSat='"+minutesSat+"', minutesSun='"+minutesSun+"' WHERE periodEndingDate='"+periodEndingDate+"' AND employeeID='"+empID+"';");
在重复密钥更新时,不能将
WHERE
子句与一起使用。它正在更新副本。
如果您在(periodEndingDate,employeeID)
上有一个唯一的
索引,则它已经在更新正确的行,而没有where子句。另外,在Update子句中丢失tablename和集合
欢迎光临!另外,欢迎来到Stackoverflow。查看答案,如果答案有帮助,您可以点击分数下的绿色复选框进行投票或接受。