Erro pesquisar dados

esta e minha classe de cidade

[code]
package cadastro;
import java.sql.SQLException;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import oracle.toplink.essentials.internal.expressions.SQLInsertStatement;
import ultilitario.conexao;
import javax.swing.text.MaskFormatter;

/**
*

  • @author Administrador
    */
    public class cidade extends javax.swing.JFrame {
    int navega = 0;
    MaskFormatter formatocep;
    conexao con_cidade;

    /** Creates new form cidade */
    public cidade() {
    initComponents();

     con_cidade = new conexao();
     con_cidade.conecta();
     con_cidade.executeSQL("select * FROM cidade");
      
     try
    {
     con_cidade.resultset.first();   
     mostrar_dados();
    

    }
    catch(SQLException erro)
    {
    JOptionPane.showMessageDialog(null,“Não localizou dados”+erro);
    }
    preencher_table();
    }

private void pesquisarActionPerformed(java.awt.event.ActionEvent evt) {
try
{
con_cidade.resultset.first();
String igual = “n”;
int tamanho_pesquisa = pesquisar.getText().length();
while (igual == “n”)
{
String pesquisado = con_cidade.resultset.getString(“nome”).substring(0,(tamanho_pesquisa));

      if (pesquisado.equals(pesquisar.getText()))
      {
          igual = "n";
      }
      
      else
          con_cidade.resultset.next();
  }  
  codigo.setText(con_cidade.resultset.getString("codigo"));
  mostrar_dados();
}
catch(Exception erro)
{
   JOptionPane.showMessageDialog(null,"Não conseguiu localizar dados"+erro); 
}
}                                         

private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {                                         
try
{
    String sql = "select * from cidade Where codigo = "+codigo.getText();
    con_cidade.executeSQL(sql);
    con_cidade.resultset.first();
    String nome = "Deletar a cidade ? "+con_cidade.resultset.getString("nome")+" ? ";
    int opção_escolhida = JOptionPane.showConfirmDialog(null,nome,"Exclução",JOptionPane.YES_NO_OPTION);
    if (opção_escolhida == JOptionPane.YES_OPTION)
    {
        sql = "DELETE FROM cidade Where codigo = "+codigo.getText();
        int conseguiu_excluir = con_cidade.statement.executeUpdate(sql);
        if (conseguiu_excluir == 1)
        {
          JOptionPane.showMessageDialog(null,"Exclusão realizada com sucesso");
          con_cidade.executeSQL(sql);
          con_cidade.resultset.first();
          mostrar_dados();
        }   
    }
    else
    return;
}   
catch(SQLException erro)
{
   JOptionPane.showMessageDialog(null,"erro ao tentar excluir um registro"+erro); 
}        
}                                        

private void jButton7ActionPerformed(java.awt.event.ActionEvent evt) {                                         
try
{
    String sql ="UPDATE cidade SET nome ='"+nome.getText()+"',"+
            "cep ='"+cep.getText()+"',"+
            "uf = '"+uf.getSelectedItem()+"' where codigo = "+codigo.getText();
    con_cidade.statement.executeUpdate(sql);
    JOptionPane.showMessageDialog(null,"Alteração realizada com Sucesso! ");
    
    con_cidade.executeSQL("Select * from cidade");
    con_cidade.resultset.next();
    mostrar_dados();
}
catch(SQLException erro)
{
    JOptionPane.showMessageDialog(null,"Nâo foi Possivel fazer Alteração"+erro);
}
}                                        

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {                                         
codigo.setText("");
nome.setText("");
cep.setText("");
uf.setSelectedItem("AC");
nome.requestFocus();
codigo.setEditable(false);
}                                        

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                         
try
{
    con_cidade.resultset.previous();
    mostrar_dados();
    navega = 1;
}
catch(SQLException erro)
{
 JOptionPane.showMessageDialog(null,"Não localizou dados"+erro);
}
}                                        

private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {                                         
try {
    con_cidade.resultset.last();
    mostrar_dados();
    }
catch(SQLException erro)
{
JOptionPane.showMessageDialog(null,"Não localizou dados"+erro);
}
}                                        

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
 try {
        con_cidade.resultset.first();
        mostrar_dados();
    } catch(SQLException erro) {
        JOptionPane.showMessageDialog(null,"Não localizou dados"+erro);
    }
}                                        

private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {                                         
try
{
    String sqlinsert ="insert into cidade (nome,cep,uf) values ('"+
    nome.getText()+"','"+
    cep.getText()+"','"+
    uf.getSelectedItem()+"')";
    con_cidade.statement.executeUpdate(sqlinsert);
    JOptionPane.showMessageDialog(null,"Gravação realizado com sucesso!");
    
    con_cidade.executeSQL("Select * from cidade");
    con_cidade.resultset.first();
    mostrar_dados();
   }
catch(SQLException erro)
{
    JOptionPane.showMessageDialog(null,"Erro a tentar Gravar o Registros"+erro);
}
}                                        

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {                                         
    try {
        con_cidade.resultset.next();
        mostrar_dados();
        navega = 2;
    } catch(SQLException erro) {
        JOptionPane.showMessageDialog(null,"Não localizou dados"+erro);
    }
}                                        

/**
 * @param args the command line arguments
 */
public static void main(String args[]) {
    java.awt.EventQueue.invokeLater(new Runnable() {
        public void run() {
            new cidade().setVisible(true);
        }
    });
}

// Declaração de variáveis - não modifique
private javax.swing.JFormattedTextField cep;
private javax.swing.JTextField codigo;
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JButton jButton4;
private javax.swing.JButton jButton5;
private javax.swing.JButton jButton6;
private javax.swing.JButton jButton7;
private javax.swing.JButton jButton8;
private javax.swing.JButton jButton9;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JPanel jPanel4;
private javax.swing.JPanel jPanel5;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTabbedPane jTabbedPane1;
private javax.swing.JTable jTable1;
private javax.swing.JTextField nome;
private javax.swing.JTextField pesquisa;
private javax.swing.JButton pesquisar;
private javax.swing.JComboBox uf;
// Fim da declaração de variáveis

public void mostrar_dados()
{
try
{
codigo.setText(con_cidade.resultset.getString(“codigo”));
nome.setText(con_cidade.resultset.getString(“nome”));
uf.setSelectedItem(con_cidade.resultset.getString(“uf”));
cep.setText(con_cidade.resultset.getString(“cep”));
}
catch(SQLException erro)
{
if (navega == 1)
JOptionPane.showMessageDialog(null,“Saiba que você esta no primeiro registro”);
else if (navega == 2)
JOptionPane.showMessageDialog(null,“Saiba que você esta no ultimo registro”);
else
JOptionPane.showMessageDialog(null,“Não localizou dados”+erro);
navega = 0;
}
}

public void preencher_table()
{
    jTable1.getColumnModel().getColumn(0).setPreferredWidth(5);
    jTable1.getColumnModel().getColumn(1).setPreferredWidth(300);
    jTable1.getColumnModel().getColumn(2).setPreferredWidth(5);
    jTable1.getColumnModel().getColumn(3).setPreferredWidth(5);
    
    DefaultTableModel modelo = (DefaultTableModel)jTable1.getModel();
    modelo.setNumRows(0);
    
    try
    {
        while (con_cidade.resultset.next())
        modelo.addRow(new Object [] 
        {con_cidade.resultset.getString("codigo")
        ,con_cidade.resultset.getString("nome")
        ,con_cidade.resultset.getString("uf")
        ,con_cidade.resultset.getString("cep")});
        
    }
    
    catch(SQLException erro)
    {
        JOptionPane.showMessageDialog(null,"Erro ao lista"+erro);
    }
}

}[/code]

e esta e minha classse de conexão com o banco de dados que si chama conexao

[code]
package ultilitario;
import javax.swing.;
import java.sql.
;
import oracle.toplink.essentials.queryframework.ResultSetMappingQuery;

public class conexao
{
final private String driver = “sun.jdbc.odbc.JdbcOdbcDriver”;
final private String url = “jdbc:odbc:estoque”;
final private String usuario = “”;
final private String senha = “”;
private Connection conexao;
public Statement statement;
public ResultSet resultset;

public boolean next;

public boolean conecta()
{ 
boolean result = true;
try
{
    Class.forName(driver);
    conexao = DriverManager.getConnection(url, usuario, senha);
    JOptionPane.showMessageDialog(null,"Conectou");
}

catch(ClassNotFoundException Driver)
{
    JOptionPane.showMessageDialog(null,"Driver não localizado: "+Driver);
    result = false;
}
catch(SQLException Fonte)
{
    JOptionPane.showMessageDialog(null,"Deu erro na conexão "+
            "com fonte e dados: "+Fonte);
    result = false;
}
   return result;

}

public void desconecta()
{
boolean result = true;
try
{
conexao.close();
JOptionPane.showMessageDialog(null,“banco fecahdo”);
}

catch(SQLException fecha)
{
    JOptionPane.showMessageDialog(null,"Não foi possivel "+
            "fechar o banco de dados: "+fecha);
}

}
public void executeSQL(String sql)
{
try
{
statement = conexao.createStatement(
ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
resultset = statement.executeQuery(sql);
}
catch(SQLException sqlex)
{
JOptionPane.showMessageDialog(null,"Não foi possivel “+
“executar o camando sql,”+sqlex+”, o sql passado foi "+sql);
}
}
}[/code]

eu crie um botão chamado pesquisar e fiz da seguinte forma

[code]
private void pesquisarActionPerformed(java.awt.event.ActionEvent evt) {
try
{
con_cidade.resultset.first();
String igual = “n”;
int tamanho_pesquisa = pesquisar.getText().length();
while (igual == “n”)
{
String pesquisado = con_cidade.resultset.getString(“nome”).substring(0,(tamanho_pesquisa));

      if (pesquisado.equals(pesquisar.getText()))
      {
          igual = "n";
      }
      
      else
          con_cidade.resultset.next();
  }  
  codigo.setText(con_cidade.resultset.getString("codigo"));
  mostrar_dados();
}
catch(Exception erro)
{
   JOptionPane.showMessageDialog(null,"Não conseguiu localizar dados"+erro); 
}[/code]

quando eu escrevo o nome da cidade para pesquisar e clico no botão para pesquisar a cidade

que e o JButton apareci esta mensagem

Não conseguiu localiza dadosjava.lang.StringIndexOutOfBoundsExecption:String index out of range: 9

o programa que estou usando e netbeans 5.5
e o banco de dado e access 2003

si alguem puder ajuda aonde eu estou errando si esta faltando alguma coisa que eu nao fiz

agredeço muito quem puder ajuda
que sou nova nesta area do java

muito obrigado quem puder ajuda[/code]

Nossa, até gostaria ! boa sorte hehe :slight_smile:

[quote]java.lang.StringIndexOutOfBoundsExecption:String index out of range: 9 [/quote] Em que linha? E usa tag code pelo amor de deus.

[quote]public class StringIndexOutOfBoundsException
extends IndexOutOfBoundsException

Thrown by String methods to indicate that an index is either negative or greater than the size of the string. For some methods such as the charAt method, this exception also is thrown when the index is equal to the size of the string. [/quote]

[quote]MarcoFloriano
Post 27/05/2008 14:00:14 Assunto: Re:botão pesquisar
Nossa, até gostaria ! boa sorte hehe [/quote]

Boa hahahahah!

xandebassget coloque o seu código entre as tags code, para melhor visualização do seu código

att