为什么一用 rs.next() 就出错?

zzpping 2002-02-25 03:33:45
程序段如下:

String sql="select * from user where name='test'";
ResultSet rs = RegisterBean.executeQuery(sql);
if(rs.next()) {
rs.close();
out.println("<CENTER>用户存在!</CENTER>");

}

去掉 if()... 那一部分, 程序就不出错, 加上就出错,
为什么一用 rs.next() 就出错?
...全文
77 15 打赏 收藏 举报
写回复
15 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
xmhjs 2002-03-06
请给分啊,绝对正确
  • 打赏
  • 举报
回复
xmhjs 2002-03-06
只有JDBC2.0才支持
  • 打赏
  • 举报
回复
xmhjs 2002-03-06
你用的是JDBC-ODBC BRIDGE连接数据库,所以不行(不支持),
你只用有
if(rs.next())
  ...
else
  ...
即可
  • 打赏
  • 举报
回复
whyyy78 2002-03-02
rs.close();去掉有没有错?
  • 打赏
  • 举报
回复
stupidball 2002-03-01
程序应该多帖点,全一些,可能发现错误所在。仅这一段试没错的。
  • 打赏
  • 举报
回复
yuanzi 2002-03-01
把RegisterBean贴出来看看,是不是你在BEAN中已经把rs关闭了?关于rs.last(),这个不能用可能是你的JDBC的版本较低,这个只有2.0以后才支持,还有,Statement stmt=con.createStatement(int resultSetType,int resultSetConcurrency) 这两个参数你可以参阅ResultSet。
  • 打赏
  • 举报
回复
jimjxr 2002-02-27
这个不一定对,但是这个错误java.lang.IllegalStateException: Response has already been committed的意思就是上面所说的。Commit的意思就是你的HTTP回复已经发给用户端了,这时你就不能再往out里面写东西的了。
  • 打赏
  • 举报
回复
zzpping 2002-02-27
不能再往什么地方写东西了?
能详细点么?
  • 打赏
  • 举报
回复
jimjxr 2002-02-26
不是rs.next的问题,应该是out.println的问题。你的回复(Response)已经发出去了(commit),就不能再往里面写东西了。
  • 打赏
  • 举报
回复
zzpping 2002-02-26
rs的结果不为NULL,
报错为:
Internal Servlet Error:

java.lang.IllegalStateException: Response has already been committed
at org.apache.tomcat.core.HttpServletResponseFacade.sendError(HttpServletResponseFacade.java:157)
at org.apache.jasper.runtime.JspServlet.unknownException(JspServlet.java:299)
at org.apache.jasper.runtime.JspServlet.service(JspServlet.java:377)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:503)
at org.apache.tomcat.core.ContextManager.service(ContextManager.java:559)
at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:160)
at org.apache.tomcat.service.TcpConnectionThread.run(SimpleTcpEndpoint.java:338)
at java.lang.Thread.run(Thread.java:484)
  • 打赏
  • 举报
回复
111222 2002-02-26

只需要人民币20元,

你就可以获得本灌水机的程序和Visual C++源代码,

并获得永久性技术支持。

还等什么?灌水等着你!

就在今夜!元宵佳节!
  • 打赏
  • 举报
回复
yanchang 2002-02-25
1 你打印rs,看看是不是NULL
2 你的bean里面不能把conn和stmt给close
3 报什么错了
  • 打赏
  • 举报
回复
zzpping 2002-02-25
这有什么区别么?

另外:
为什么 rs.last() 也不能用呢?
  • 打赏
  • 举报
回复
armyshu 2002-02-25
改成while(rs.next())试试!
  • 打赏
  • 举报
回复
zzpping 2002-02-25
补充一句:
我用的jdbc是:mm.mysql.Driver
是不是没有这个函数? 有别的替代函数么?
  • 打赏
  • 举报
回复
相关推荐
发帖
Web 开发

8.0w+

社区成员

Java Web 开发
社区管理员
  • Web 开发社区
加入社区
帖子事件
创建了帖子
2002-02-25 03:33
社区公告
暂无公告