Java 描述附近的SQL语法错误

Java 描述附近的SQL语法错误,java,mysql,sql,web,Java,Mysql,Sql,Web,我得到的错误是: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解第1行中使用接近“Desc”值(1、'Sem 2'、'1',1、'1234'、'2017-11-03'、'2',3、'vnfhmj.k;/kkc')的正确语法 如果我删除desc..则错误消失。可输入的项目数量是否有限制 代码: DESC是一个SQL关键字,用于在ORDERBY子句中指定方向。这可能

我得到的错误是:

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解第1行中使用接近“Desc”值(1、'Sem 2'、'1',1、'1234'、'2017-11-03'、'2',3、'vnfhmj.k;/kkc')的正确语法

如果我删除
desc..
则错误消失。可输入的项目数量是否有限制

代码:


DESC是一个SQL关键字,用于在ORDERBY子句中指定方向。这可能就是问题所在。试着用像'Desc'这样的背景符号围绕它


此外,请注意以后不要使用关键字或SQL函数作为字段名,这可能会导致调试错误非常困难。

更正。您需要用反勾号转义列名!根据@jspurim responseYup,现在我只需要知道如何在markdown中转义`来编辑我的答案XD。很高兴能帮上忙。如果对你有用的话,请考虑接受这个答案。
String query="insert into exam(sub_id,exam_sem,co,tch_id,ex_pwd,ex_date,ex_duration,noofq,Desc) values(?,?,?,?,?,?,?,?,?)";
PreparedStatement pstmt=DatabaseConnector.getPreparedStatement(query);
//pstmt.setInt(1,ed.getEx_id());
pstmt.setInt(1,ed.getSub_id());
pstmt.setString(2,ed.getEx_sem());
pstmt.setString(3,ed.getEx_co());
pstmt.setInt(4,ed.getT_id());
pstmt.setString(5,ed.getEx_pwd());
pstmt.setString(6,ed.getEx_date());
pstmt.setString(7,ed.getEx_duration());
pstmt.setInt(8,ed.getNoofq());
pstmt.setString(9,ed.getDesc());