Ajuda Consulta MySQL

Pessoal, estou com o seguinte problema:
Tenho um ArrayList de Strings que serão buscadas num banco de dados.
Meu código faz o seguinte:

Iterator<String> itGi = seq.gis.iterator();
				while(itGi.hasNext()){
					String gi = itGi.next();
					ResultSet consulta = statem.executeQuery("SELECT * FROM Sequencia WHERE gi = '"+gi+"'");
					while(consulta.next()){
			    		System.out.println("Gi:\n"+consulta.getString("gi")+"\n"+" Tag:\n"+consulta.getString("tag"));
			    		String tag = consulta.getString("tag");
					try {
							statem.executeUpdate("INSERT INTO SequenciasEncontradas(nome,gi,tag)"+ " VALUES('"+sequenciaStr+"','"+gi+"','"+tag+"')");
					}catch (SQLException e){
							
					}
                }

O problema é que eu não consigo encontrar,no banco de dados, a string que está armazenada na variável gi.
Se eu setar gi para um valor que eu sei que está no banco de dados, eu consigo achá-la, mas quando eu capturo a string do arraylist parece que há um conflito de tipo de dados, por isso ele n encontra.

Alguém sabe o que é isso?

Vc tem certeza que a String está retornando valor?

Tenta imprimi a String p ver se tá recebendo ok.
Faz um teste simples:

[code]
Iterator itGi = seq.gis.iterator();
while(itGi.hasNext()){
String gi = itGi.next();
System.out.println(gi);
}
}

// ou assim direto

Iterator itGi = seq.gis.iterator();
while(itGi.hasNext()){
System.out.println(itGi.next().toString());
}
}[/code]

Abraços