[RESOLVIDO] [Microsoft][Driver ODBC para Microsoft Access]indice de descritor invalido

0 respostas
Hewerson

Ola estou com um pequeno probleminha, estou fazendo uma consulta numa jFrame, que me retorne o banco em uma jTable. so que ele me retorna o seguinte erro:

java.sql.SQLException: [Microsoft][Driver ODBC para Microsoft Access]?ndice de descritor inv?lido
        at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6957)
        at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7114)
        at sun.jdbc.odbc.JdbcOdbc.SQLColAttributes(JdbcOdbc.java:2613)
        at sun.jdbc.odbc.JdbcOdbcResultSet.getColAttribute(JdbcOdbcResultSet.java:5444)
        at sun.jdbc.odbc.JdbcOdbcResultSet.getColumnType(JdbcOdbcResultSet.java:6055)
        at sun.jdbc.odbc.JdbcOdbcResultSet.getMaxCharLen(JdbcOdbcResultSet.java:5472)
        at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:278)
        at tj.Tela_Principal.jButton3MousePressed(Tela_Principal.java:288)
        at tj.Tela_Principal.access$600(Tela_Principal.java:10)
        at tj.Tela_Principal$7.mousePressed(Tela_Principal.java:115)
        at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:263)
        at java.awt.Component.processMouseEvent(Component.java:6264)
        at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
        at java.awt.Component.processEvent(Component.java:6032)
        at java.awt.Container.processEvent(Container.java:2041)
        at java.awt.Component.dispatchEventImpl(Component.java:4630)
        at java.awt.Container.dispatchEventImpl(Container.java:2099)
        at java.awt.Component.dispatchEvent(Component.java:4460)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
        at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4235)
        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
        at java.awt.Container.dispatchEventImpl(Container.java:2085)
        at java.awt.Window.dispatchEventImpl(Window.java:2478)
        at java.awt.Component.dispatchEvent(Component.java:4460)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Segue abaixo o codigo:
Class.forName(driver);
            con = DriverManager.getConnection(url);
            statement = con.createStatement();
            if(jCheckBox1.isSelected())
            {
                sql = ("SELECT processo,data_vencimento FROM cad_processo WHERE data_vencimento='12122010';");//retornar datas no vencimento
            }

           rs = statement.executeQuery(sql);
            String dados[][] = (String[][])null;
            ResultSetTableModel rst = new ResultSetTableModel("sun.jdbc.odbc.JdbcOdbcDriver", "jdbc:odbc:banco", "", "", sql);
            dados = new String[rst.getRowCount()][10];
            for(int aux = 0; rs.next(); aux++)
            {
                dados[aux][0] = rs.getString(2);
                dados[aux][1] = rs.getString(4);

            }

            javax.swing.table.TableModel jTBListarModel = new DefaultTableModel(dados, new String[] {
                "Processo","Data Vencimento"
            });
            jTable1.setModel(jTBListarModel);
        }
        catch(Exception e)
        {
            e.printStackTrace();

        }

Abaixo estrutura da tabela:

Bd: banco.mdb
Tabela:banco
Campos da tabela:

cod: numeração automatica(chave primaria)
processo: texto
data_inicial: texto
data_vencimento: texto

Criado 29 de janeiro de 2011
Respostas 0
Participantes 1