Java 是什么导致了这个SQLException?
我得到以下错误: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:您有一个 SQL语法错误;检查与您的产品相对应的手册 在第1行的“”附近使用正确语法的MySQL服务器版本 尝试运行以下代码时:Java 是什么导致了这个SQLException?,java,sql,Java,Sql,我得到以下错误: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:您有一个 SQL语法错误;检查与您的产品相对应的手册 在第1行的“”附近使用正确语法的MySQL服务器版本 尝试运行以下代码时: String sql = "INSERT INTO `tutors`.`appointments`" + "(`tutorID`, `tuteeName`, `tuteeEmail`, `time`, `date`)"
String sql = "INSERT INTO `tutors`.`appointments`"
+ "(`tutorID`, `tuteeName`, `tuteeEmail`, `time`, `date`)"
+ ("VALUES(?, ?, ?, ?, ?");
try {
PreparedStatement ps = conn.prepareStatement(sql);
ps.setInt(1, working.get(0).getTutorID());
ps.setString(2, tuteeName);
ps.setString(3, tuteeEmail);
ps.setDate(4, date);
ps.setTime(5, time);
ps.executeUpdate();
异常所指的
'
是由什么产生的?我正在学习使用java中的SQL,所以我确信这只是一个愚蠢的语法错误…您需要行间距,并且没有关闭括号中的值:
String sql = "INSERT INTO `tutors`.`appointments`"
+ " (`tutorID`, `tuteeName`, `tuteeEmail`, `time`, `date`)"
+ ("VALUES(?, ?, ?, ?, ?)");
sql字符串有问题。应该是
"INSERT INTO `tutors`.`appointments`"
+ "(`tutorID`, `tuteeName`, `tuteeEmail`, `time`, `date`)"
+ "VALUES(?, ?, ?, ?, ?)";
String sql = "INSERT INTO `tutors`.`appointments`"
+ " (`tutorID`, `tuteeName`, `tuteeEmail`, `time`, `date`)"
+ " VALUES(?, ?, ?, ?, ?");
可能在第三行的第一个“(”中
String sql = "INSERT INTO `tutors`.`appointments`"
+ "(`tutorID`, `tuteeName`, `tuteeEmail`, `time`, `date`)"
+ ("VALUES(?, ?, ?, ?, ?");
应该是
"INSERT INTO `tutors`.`appointments`"
+ "(`tutorID`, `tuteeName`, `tuteeEmail`, `time`, `date`)"
+ "VALUES(?, ?, ?, ?, ?)";
String sql = "INSERT INTO `tutors`.`appointments`"
+ " (`tutorID`, `tuteeName`, `tuteeEmail`, `time`, `date`)"
+ " VALUES(?, ?, ?, ?, ?");
在第二行和第三行的开头添加一些空格。在将查询放入codespacing之前,始终尝试在客户端执行一次查询,这并不是真正的问题,但是
VALUES
子句中缺少)
。