异常:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException

当程序中出现异常提示为: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;

现在的错误就显而易见了。

你可能感兴趣的:(异常:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException)