com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:Unknowncolumninfieldlist_html/css
严重: Servlet.service() for servlet jsp threw exceptioncom.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column '??????' in 'field list' at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at com.mysql.jdbc.Util.handleNewInstance(Util.java:406) at com.mysql.jdbc.Util.getInstance(Util.java:381) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1030) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3491) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3423) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1936) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2060) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2536) at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1564) at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1485) at org.apache.jsp.insert_jsp._jspService(insert_jsp.java:100) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServlet.service(HttpServlet.java:723) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) at javax.servlet.http.HttpServlet.service(HttpServlet.java:723) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) at org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:891) at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:750) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:2282) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619)
------解决方案-------------------- 这个错很简单从这代码可以看出 : String sql="INSERT INTO STUDENT VALUES("+id+","+name+")";如果 我的 id=1,name=adf 那么组合成的字符串就是INSERT INTO STUDENT VALUES(1,adf ) 你可以尝试去执行这句SQL,肯定会报错正确的写法应该是 INSERT INTO STUDENT VALUES(1,'adf' ); --数字类型可以不用加单引号 所以应该是 String sql="INSERT INTO STUDENT VALUES("+id+",'"+name+"')"; ------解决方案-------------------- 遇见这种数据库语句的问题,考虑到语句有字符串的的拼接,你可以用System.out.print(sql);先将你的语句输出,这样就很容易发现有没有错误。
小编还为您整理了以下内容,可能对您也有帮助:
关于JDBC抛com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException异常的的问题
MySQLSyntaxErrorException异常,这说明你的sql语句写错了,“select * form user”的“form”单词拼写错误,应该是“from”。
拓展资料:
使用jdbc出现的易出现的异常和原因总结
ClassNotFoundException: No Suitable Driver Found 原因:没有导入第三方jar包。
invalid username/password 无效的用户名/密码。
IO 错误: The Network Adapter could not establish the connection。
标识符无效。原因:有可能是写错了sql中的字段。
无效字符。 原因:有可能在结尾处添加了分号。
参考资料:Java 异常处理_w3cschool
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException
select * from user where id=1 limit 0,10这种写法是没错的,不过你传的参数错了,你看错误“check the manual that corresponds to your MySQL server version for the right syntax to use near '-5,5' at line 1”你的startno传的是-5这里这个数字必须是大于等于0的
这样可以么?
eclipse中运行程序报错1com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:
这个原因 呢 请你仔细检查你的代码, 有地方和mysql的关键字冲突了。 你试试把User表改一下名字, 换个其他的名字, 或许还有别的地方冲突。追问我的错误是和MySQL的关键字冲突啦??好吧,我会去仔细检查一下、、
那请问我上面那个query()方法有错吗??