为何在执行insert 后,数据插入数据库,但是出现以下错误

xiaoluo 2001-08-16 04:39:51
代码如下:
String name=request.getParameter("na");
String zt=request.getParameter("zt");
String nr=request.getParameter("nr");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:test","sa","");
Statement s=con.createStatement(1004,1007) ;
String sql="insert into article (zz,nr,tm) values ('"+name+"','"+zt+"','"+nr+"')";
//response.sendRedirect("www.sohu.com");
ResultSet rs=s.executeQuery(sql);

//ResultSet rs=s.executeQuery("select * from article");
rs.close() ;
con.close() ;
s.close() ;



错误提示:javax.servlet.ServletException: No ResultSet was produced
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:459)
at _0002finsert_00031_0002ejspinsert1_jsp_11._jspService(_0002finsert_00031_0002ejspinsert1_jsp_11.java:85)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:177)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
at org.apache.tomcat.core.Handler.service(Handler.java:286)
at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
...全文
124 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
你只是进行insert操作,没有记录集返回.
ResultSet rs=s.executeUpdate(sql);改为:
s.executeUpdate(sql)

并删除rs.close() ;
ls 2001-08-17
  • 打赏
  • 举报
回复
'No ResultSet was produced'不是指明没有结果集生成吗?如果sql是一个插入(更新、删除)建议使用executeUpdate(sql),但也可以使用executeQuery(sql),这里的关键错误是实际结果返回的不是一个结果集,而只是一个整数,结果集=整数,当然报错啦;而且你去看看数据库,你的语句实际已经执行了

最后,别忘了给分呀!!
  • 打赏
  • 举报
回复
才5分,太少了!
xiaoluo 2001-08-17
  • 打赏
  • 举报
回复
给分了
lci21 2001-08-16
  • 打赏
  • 举报
回复
我就不信,把程序粘出来,看看!
xiaoluo 2001-08-16
  • 打赏
  • 举报
回复
各位的方法都试过了,:)还是不行!
whxab 2001-08-16
  • 打赏
  • 举报
回复
查查你插入的zz,nr,tm三字段和它们在数据库中的先后是否一致,若不一致,修改试一试
lci21 2001-08-16
  • 打赏
  • 举报
回复
另外我觉得你的程序不太完善,如果取得的字串为空,将会出现空指针异常,注意处理这种情况
lci21 2001-08-16
  • 打赏
  • 举报
回复
ResultSet rs=s.executeQuery(sql);
改成:
ResultSet rs=s.executeUpdate(sql);
在试试


81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧