[RESOLVIDO]MySQL - Fiz um UPDATE e não consigo fazer um Select

1 resposta
mateus.cordeiro

Senhores Boa tarde!

To com problema, fiz um update no banco de produção assim:

UPDATE controlehoras.tabcontrole SET entrada = '8:00:00' , almoco = '12:30:00' , volta = '13:30:00', saida = '23:59:00' , adicional = '1:30:00' , idbanco = 7 , obs = 'Alterado por Nataly. Atualizacao Banco' WHERE cod_func = 280 and data_cont = '2011-12-05'; UPDATE controlehoras.tabcontrole SET entrada = '10:00:00' , almoco = '12:30:00' , volta = '13:30:00', saida = '23:59:00' , adicional = '5:40:00' , idbanco = 7 , obs = 'Alterado por Nataly. Atualizacao Banco' WHERE cod_func = 280 and data_cont = '2011-12-06'; UPDATE controlehoras.tabcontrole SET entrada = '14:30:00' , almoco = '0:00:00' , volta = '0:00:00' , saida = '23:59:00' , adicional = '2:05:00' , idbanco = 7 , obs = 'Alterado por Nataly. Atualizacao Banco' WHERE cod_func = 280 and data_cont = '2011-12-07'; . . .
Com 60 linhas!

Porem quando faço esse select pelo JAVA

public List<Horas> carrega(String Iduser) { // listar
         int idusuario = Integer.parseInt(Iduser);
         List<Horas> hora = new ArrayList<Horas>();
         Calculo2 ch = new Calculo2();
         //Calculo ch = new Calculo();
         try{                  
         String sql = " SELECT tb.*, "
                    + " bh.justificativa AS justificativa "
                    + " FROM tabcontrole AS tb LEFT JOIN bancohoras AS bh ON tb.idbanco = bh.idbanco"
                    + " WHERE cod_func = ? "
                    + " ORDER BY data_cont ";
         
         PreparedStatement ps = conexao.getConn().prepareStatement(sql);
         ps.setInt(1, idusuario);
         ResultSet rs = ps.executeQuery();
             
             while (rs.next()){
                Horas hr = new Horas();
                
                Time entra = rs.getTime("entrada");
                Time almo  = rs.getTime("almoco");
                Time volt  = rs.getTime("volta");
                Time said  = rs.getTime("saida");
                Time adic  = rs.getTime("adicional");
                
                hr.setData(rs.getDate("data_cont"));
                hr.setEntrada(entra);
                hr.setAlmoco(almo);
                hr.setRetorno(volt);
                hr.setSaida(said);
                hr.setAdicional(adic);
                hr.setJustificativa(rs.getString("justificativa"));
                hr.setObs(rs.getString("obs"));

                hr.setHrTrabalhadas(ch.calcular2(entra, almo, volt, said, adic));
                //hr.setHrTrabalhadas(ch.calcular(entra, almo, volt, said));
                                
                hora.add(hr);
             }

Porem quando faço direto no MySQL ele retorna os dados normal!

Já reiniciei o server, o banco o GlassFish, ate fiz um DUMP do banco e voltei e continua com problemas.
Não apresenta errou nenhum, apenas não tras os valores!

1 Resposta

mateus.cordeiro

Galera!

Resolvi! ufffa! ainda to empregado!

Não sei pq ele acabou inserindo uma linha p cada usuario com a data em branco (0000-00-00)!
Ai o JAVA não intendia essa data e dava erro!

Aprendi algumas coisas com todo esse stress!
O JAVA não lê data (0000-00-00) - acho que não tem no seu calendario!
Agora a mais importante é: nunca mexa no banco da produção sem antes ter certeza q fez o backup! :smiley:

Fui!!!

Criado 20 de janeiro de 2012
Ultima resposta 20 de jan. de 2012
Respostas 1
Participantes 1