从数据库中读取数据的问题
各位大侠救我
我用的是sqlserver2000,驱动是JDBC for sql2k,做了一个连接db的的bean,连接数据库没问题,然后我通过以下代码去提取数据:
<% ResultSet rs,rs1;
String sBBS,sKCName="";
String sql="select * from article order by shijian DESC";
rs=CommonDBBean.executeQuery(sql);
while(rs.next()){
sBBS=rs.getString("forum");
sql="select kechengname from kecheng_new where bbs='"+sBBS+"'";
rs1=CommonDBBean.executeQuery(sql);
if(rs1.next()){
sKCName=rs1.getString("kechengname");
}
%>
<tr><td align="left" height="19">◆<%=rs.getString("title")%></a><BR><font color="#bbbbbb"><%=sKCName%></font><br></td></tr>
<%
}
%>
然后报了以下的错:
500 Servlet Exception
java.sql.SQLException: [Microsoft][SQLServer JDBC Driver]ResultSet can
not re-read row data for column 3.
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.base.BaseResultSet.validateColumnIndex(Unknown Source)
at com.microsoft.jdbc.base.BaseResultSet.getString(Unknown Source)
at com.microsoft.jdbc.base.BaseResultSet.getString(Unknown Source)
at _forum._body__jsp._jspService(/forum/body.jsp:118)
at com.caucho.jsp.JavaPage.service(JavaPage.java:74)
at com.caucho.jsp.Page.subservice(Page.java:485)
at com.caucho.server.http.FilterChainPage.doFilter(FilterChainPage.java:179)
at com.caucho.server.http.Invocation.service(Invocation.java:288)
at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:132)
at com.caucho.server.http.QRequestDispatcher.include(QRequestDispatcher.java:344)
at com.caucho.server.http.QRequestDispatcher.include(QRequestDispatcher.java:251)
at com.caucho.jsp.QPageContext.include(QPageContext.java:484)
at _forum._index__jsp._jspService(_index__jsp.java:28)
at com.caucho.jsp.JavaPage.service(JavaPage.java:74)
at com.caucho.jsp.Page.subservice(Page.java:485)
at com.caucho.server.http.FilterChainPage.doFilter(FilterChainPage.java:179)
at com.caucho.server.http.Invocation.service(Invocation.java:288)
at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:132)
at com.caucho.server.http.ServletServer.serviceTop(ServletServer.java:937)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:213)
at com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:158)
at com.caucho.server.TcpConnection.run(TcpConnection.java:140)
at java.lang.Thread.run(Thread.java:484)
--------------------------------------------------------------------------------
Resin 2.0.5 (built Fri Jan 11 08:29:05 PST 2002)
然后把代码改成如下:
<% ResultSet rs,rs1;
String sBBS,sKCName="";
String sql="select * from article order by shijian DESC";
rs=CommonDBBean.executeQuery(sql);
while(rs.next()){
%>
<tr><td align="left" height="19">◆<%=rs.getString("title")%></a><BR><font color="#bbbbbb"><%=sKCName%></font><br></td></tr>
<%
}
%>
能检索出数据,但是全是乱码。
我在开头加了
<%@ page language="java" contentType="text/html;charset=gb2312"%>的。