Erro no resultado do resultset

2 respostas
D

Pessoal estoou tendo problemas em buscar uma lista de dados no sql não sei o que acontece de errado ele sai da minha execução sem dar erro nenhum, não busca mais de 1 dado.

rs = st.executeQuery("SELECT codlogin FROM loginforum WHERE codforum='"+codforum+"'");
        int i = 0;
        String codlogin[]=null;
        while(rs.next()){
            i++;
        }

        //Aqui tem algum erro!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
        rs.first();
        for(int cont=0; cont<=i ; cont++){
            codlogin[cont]=rs.getString("codlogin");
        }

Alguem poderia me dar uma ideia ... eu jah fiz de varias maneiras diferentes... mas ele so executa o rs.getString("codlogin") apenas uma vez...

2 Respostas

andreiribas

tua lógica tá errada cara.
vou dar uma arrumada:

rs = st.executeQuery("SELECT codlogin FROM loginforum WHERE codforum='"+codforum+"'");
int i = 0;
List<String> codlogin = new ArrayList<String>();
while(rs.next()){
    codLogin.add(rs.getString("codlogin"));
}

Você estava iterando no resultset até o final só pra pegar o número de elementos por causa do array, eu criaria uma List pra poder adicionar quantos registros eu quisesse.

então você queria iterar de novo no resultset, mas sem chamar next() pra pegar os registros, por isso não dava, ele só pegava o primeiro.

D

Valew cara … eu tava apanhando nisso…
e é uma coisa super simples de fazer

Criado 16 de março de 2008
Ultima resposta 17 de mar. de 2008
Respostas 2
Participantes 2