Usando o JComboBox como uma caixa de pesquisa

Estou usando umJComboBox para pesquisar uma consulta de um banco de dados sql. Aqui está o meu código.

private void srKeyTyped(java.awt.event.KeyEvent evt){
    sr.removeAllItems();
    String sch = ((JTextField)sr.getEditor().getEditorComponent()).getText();
    String schh = "SELECT * FROM tbl WHERE name LIKE '" + sch + "%';";
    search = conn.getQuery(schh);
    try {
        while (search.next()) {
            String item = search.getString("name");
            sr.addItem(item);
        }
    } catch (SQLException ex) {
        Logger.getLogger(dataprocess.class.getName()).log(Level.SEVERE, null, ex);
    }
    sr.setSelectedItem(null);
    sr.setPopupVisible(true);

    System.out.println(sch);
}

sr = JComboBox

Mas quando digito uma letra na caixa de combinação, ela adiciona todos os itens no banco de dados. Eu vim a saber queSystem.out.println(sch); sempre dá uma string vazia. E assim que eu digito uma letra, o campo de texto da caixa de combinação fica vazio (não consigo digitar uma palavra com duas letras). Como consertar isto? Obrigado.

questionAnswers(3)

yourAnswerToTheQuestion