当程序中出现异常提示为:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException 的时候,说明是SQL语句出现了错误,导致程序无法编译。例如:
语句1----> stmt.executeUpdate("update article set rootid = " + k + " where id = " + k + ";");
语句2----> stmt.executeUpdate("update article set rootid = " + k + "where id = " + k + ";");
首先说明,上面的语句是JSP文件中的语句,这两条语句的不同之处在于,where与其左边的双引号之间,语句1中有空格,语句2没有空格,当JSP文件执行的时候,服务器会将上面的语句转换成SQL语句,由于语句2中k的值和where之间没有空格,所以出现了SQL语法错误。比如k的值是55,语句1翻译成SQL语句是---->
update article set rootid = 55 where id = 55;
语句2翻译成SQL语句是---->
update article set rootid = 55where id = 55;
现在的错误就显而易见了。