连接一个表没问题,连接另一个却出现异常"Invalid Descriptor Index"?

imcjw 2004-12-02 06:05:05
将连接<a href="test.jsp?idnum=<%=rs1.getString("IDnum")%>&&id=<%=rs.getString("jobid")%>"
target=_blank>放在从一个表中取得的数据 <%=rs.getString("name")%>没问题,但放在从另一个表取得的数据<%=rs1.getString("name")%>却出现异常,IDnum和jobid分别为两个表的,异常内容如下:
javax.servlet.ServletException: [Microsoft][ODBC SQL Server Driver]Invalid Descriptor Index
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:867)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:800)
........

什么问题呢????代码如下:

<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="java.sql.*"%>

<%
int idnum = 0;
int id=0;
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url="jdbc:odbc:bssite";
String user="sa";
String password="123456";
Connection conn1= DriverManager.getConnection(url,user,password);
Statement stmt1=conn1.createStatement();
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery("select * from jobview");
ResultSet rs1=stmt1.executeQuery("select * from job ");
%>

<HTML><HEAD><TITLE></TITLE></head>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<center>
<BODY >
<FORM>
<TABLE >
<TR height=357>
<TD>所属区域 </TD>
<TD>姓名</TD>
<TD>职位名称</TD>
</TR>
<%
int i=0;
while(rs1.next()&& rs.next()){
%>

<TR >
<TD><%=rs.getString("area")%></TD>
<TD> <a href="test.jsp?idnum=<%=rs1.getString("IDnum")%>&&id=<%=rs.getString("jobid")%>" target=_blank><%=rs1.getString("name")%></a></TD>
//问题所在处!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<TD> <%=rs.getString("name")%> </TD> //另个表,连接<A> </A>放在没问题

</TR>
<% i++;

}
rs1.close();
rs.close();
stmt1.close();
conn1.close();
stmt.close();
conn.close();%>
</TABLE>
</FORM>
</BODY></center></HTML>


...全文
424 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
ningIII 2004-12-04
  • 打赏
  • 举报
回复
这个和数据库驱动应该没关系~

javax.servlet.ServletException: [Microsoft][ODBC SQL Server Driver]Invalid Descriptor Index

这个错误信息是说无效的索引,就是getString(index)中的index无效~

rs.getString("jobid")是1吗???
imcjw 2004-12-03
  • 打赏
  • 举报
回复
表的顺序肯定没问题,是按顺序读的
catblue 2004-12-03
  • 打赏
  • 举报
回复
检查一下表的字段名,然后要安顺序读
imcjw 2004-12-03
  • 打赏
  • 举报
回复
我将<%=rs.getString("jobid")%>放在一个<td></td>内能读取数据,关键是jobid与IDnum不是同
一个表中读取的,而与<%=rs.getString("name")%>中的name是同一个表中读取的,与<%=rs1.getString("name")%>中的name不是同一个表中读取的,两个表是不相关联的,所以,
就出现我所说的问题?怎么解决??
ningIII 2004-12-02
  • 打赏
  • 举报
回复
id=<%=rs.getString("jobid")%>

你看一下表里面的纪录,上面那句取出来的是不是超出范围了~
imcjw 2004-12-02
  • 打赏
  • 举报
回复
将"<a href="test.jsp?idnum=<%=rs1.getString("IDnum")%>&&id=<%=rs.getString("jobid")%>"
改为"<a href="test.jsp?idnum=<%=rs1.getString("IDnum")%>&&id=1>"
手动指定,即正常,什么原因???是不是冲突了
cnfalcon 2004-12-02
  • 打赏
  • 举报
回复
先把数据读出来放在变量中,然后再显示,这样不会交叉从两个表中读取数据,看看还有问题吗.
air82 2004-12-02
  • 打赏
  • 举报
回复
字段名错了吧,检查一下,没有问题的话换个驱动试试看
imcjw 2004-12-02
  • 打赏
  • 举报
回复
操作其中一个表没问题,同样,另一个表就出现异常,都是按顺序取的
tom2005 2004-12-02
  • 打赏
  • 举报
回复
表的结果是什么样的
假若表1 为 列1,列2
rs.get时为列1,列2
要安顺序取

81,092

社区成员

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

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