Oi Andre,
parece estar tudo ok com o seu codigo, mas tenho uma sugestao que
vai melhorar o desempenho. Voce deve tirar para fora do while a criacao do
PreparedStatement.
Criado dentro do while, como voce estah fazendo, nao faz muito
sentido. Seria a mesma coisa do que se voce criasse um Statement.
A proposito, qual banco voce estah usando? Digo isso porque tive
problemas usando bridge JDBC-ODBC no SQLServer. O driver ODBC nao permitia
abrir mais de um recurso (Statement, ResultSet, PreparedStatement, etc) na
mesma conexao.
Se pensar em mais alguma cois eu te falo. Abracos,
Bruno.
On Tue, 8 Feb 2000, Andre Zimowski Perevalo wrote:
> Caros Amigos !
> Estou com dificuldade nesta minha classe (LimpaBanco).
> Nesta classe eu seleciono de uma determinada tabela do meu DB, os campos
> Telefone e CodCli (C�digo).
> Estou fazendo uma atualiza��o no campo telefone. � o seguinte :
> Os telefones est�o com o prefixo concatenado, ex. 413676619,
> 212544854.........
> ent�o estou tirando este prefixo e armazenando somente o numero, ex.
> 3676619, 2544854.........
> S� que chega no registro 105 mais ou menos e a coisa come�a a demorar
> muito...
> Tenho cerca de 5000 registro neste banco.
> Algu�m sabe como eu poderia fazer para melhorar a performance desta classe.
> Estou enviando minha classe.
> Atenciosamente,
>
>
>
> class LimpaBanco
> {
> public static void main(String argv[])
> {
> try
> {
> Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
> Connection
> con=DriverManager.getConnection("jdbc:odbc:BancoAtendimento","","");
> Statement st = con.createStatement();
> ResultSet rs = st.executeQuery("SELECT Telefone, Codcli FROM
> AtendimentoDados");
>
> int cont = 0;
> while(rs.next())
> {
> cont ++;
> PreparedStatement st1 = con.prepareStatement("update
> AtendimentoDados SET Telefone = ? where Codcli = ?");
> st1.setString(1, rs.getString(1).substring(2));
> st1.setInt(2, rs.getInt(2));
> System.out.println(cont);
> int linhas = st1.executeUpdate();
> }
> rs.close();
> con.close();
>
> }
> catch(Exception e)
> {
> System.out.println("Erro");
> System.out.println(e.getMessage());
> }
> }
> }
>
>
>
> Andr� Zimowski Perevalo
> Associa��o Comercial do Paran�
> Dep. de Inform�tica - Desenvolvimento
> [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
>
>
>
> --------------------------- LISTA SOUJAVA ---------------------------
> http://www.soujava.org.br - Sociedade de Usu�rios Java da Sucesu-SP
> [d�vidas mais comuns: http://www.soujava.org.br/faq.htm]
> [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
> ---------------------------------------------------------------------
>
______________________________________________________________
Bruno Diniz de Paula
[EMAIL PROTECTED] - UFMG
[EMAIL PROTECTED] - Telemig Celular
"Coracoes ao alto e pes no chao."
"A verdadeira experiencia com Deus nao nos faz
fugir da realidade, mas nos da forcas para
enfrenta-la e transforma-la."
Pe. Zeca
--------------------------- LISTA SOUJAVA ---------------------------
http://www.soujava.org.br - Sociedade de Usu�rios Java da Sucesu-SP
[d�vidas mais comuns: http://www.soujava.org.br/faq.htm]
[para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
---------------------------------------------------------------------