invalid descriptor index
843859Jun 1 2008 — edited Nov 20 2014try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection c=DriverManager.getConnection("jdbc:odbc:inven");
Statement stmt = c.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
ResultSet rs2=stmt.executeQuery("Select name,qty,result from transact x,db3 y where x.status=1 and (x.code=y.code) ");
ResultSetMetaData rsm=rs2.getMetaData();
rs2.last();
int numberOfRows = rs2.getRow();
int col=rsm.getColumnCount();
System.out.println("thr r " + numberOfRows + " products");
System.out.println("thr r " col " columns");
rs2.beforeFirst();
while(rs2.next())
{
for(int h=0;h<numberOfRows;h++)
{ int i=0;
for(i=0;i<col;i++)
{
int p=20;
l=new Label[numberOfRows][3];
/*error line*/String s3= rs2.getString(i);
String s1 = Integer.toString(rs2.getInt(i+1));
String s2 = Integer.toString(rs2.getInt(i+2));
l[h]=new Label(" "+s3);
l[h][i+1]=new Label(" "+s1);
l[h][i+2]=new Label(" "+s2);
l[h][i].setBounds(p,q,60,27);
l[h][i+1].setBounds(p+80,q,60,27);
l[h][i+2].setBounds(p+160,q,60,27);
f.add(l[h][i]);
f.add( l[h][i+1]);
f.add(l[h][i+2]);
q+=30*(i+1);
}
}
}
}
catch (Exception ex)
{
ex.printStackTrace();
}
error:
E:\in>javac Gen2.java
E:\in>java Gen2
thr r 2 products
thr r 3 columns
java.sql.SQLException: [Microsoft][ODBC Driver Manager] Invalid descriptor index
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6031)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:6188)
at sun.jdbc.odbc.JdbcOdbc.SQLColAttributes(JdbcOdbc.java:2021)
at sun.jdbc.odbc.JdbcOdbcResultSet.getColAttribute(JdbcOdbcResultSet.jav
a:5124)
at sun.jdbc.odbc.JdbcOdbcResultSet.getColumnType(JdbcOdbcResultSet.java:
5754)
at sun.jdbc.odbc.JdbcOdbcResultSet.getMaxCharLen(JdbcOdbcResultSet.java:
5152)
at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:263)
at Gen2.<init>(Gen2.java:75)
at Gen2.main(Gen2.java:117)