Update mysql

Olá pessoal, eu estou tentando fazer um UPDATE no meu banco de dados e não estou conseguindo de jeito nenhum. Está dando erro na consulta. Aqui está o código do meu UPDATE:

private boolean salvarPessoa()
{
String dateInsc = jCampoDataInsc.getText();  
String dateVenc = jCampoDataVenc.getText();  
String nome = jCampoNome.getText();  
String endereco = jCampoEndereco.getText();  
String telefone = jCampoTelefone.getText();  
int peso = Integer.parseInt(jCampoPeso.getText());  
String altura = jCampoAltura.getText();  
Connection conexao = null;  
PreparedStatement stm = null;  
ResultSet rs = null;  
String mudar = "UPDATE academia.pessoas"  
                + "SET Nome = ?, Endereco = ?, Telefone = ?, Peso = ?, Altura = ?, Data_Inscricao = ?, Data_Vencimento = ?"  
                + "WHERE ID = ?";  
SimpleDateFormat formatter = new SimpleDateFormat("dd-MM-yyyy");  
java.util.Date dataInsc = null;  
java.util.Date dataVenc = null;  
try  
{  
     formatter.setLenient(false);  
     dataInsc = formatter.parse(dateInsc);  
     dataVenc = formatter.parse(dateVenc);  
}  
catch (ParseException ex)  
{  
     JOptionPane.showMessageDialog(mainPanel, "Digite uma data válida", "Erro", JOptionPane.ERROR_MESSAGE);  
     return false;  
}  
          
java.sql.Date dataInscSql = new java.sql.Date(dataInsc.getTime());  
java.sql.Date dataVencSql = new java.sql.Date(dataVenc.getTime());  
          
if (dateInsc.trim().length() != formatter.toPattern().length())  
{  
    JOptionPane.showMessageDialog(mainPanel, "Digite uma data válida", "Erro", JOptionPane.ERROR_MESSAGE);  
    return false;  
}  
          
if (dateVenc.trim().length() != formatter.toPattern().length())  
{  
     JOptionPane.showMessageDialog(mainPanel, "Digite uma data válida", "Erro", JOptionPane.ERROR_MESSAGE);  
     return false;  
}  
          
try  
{  
     Class.forName("com.mysql.jdbc.Driver");  
}  
catch (ClassNotFoundException ex)  
{  
     System.out.println("Classe não encontrada");  
}  
          
try  
{  
     conexao = (Connection) DriverManager.getConnection("jdbc:mysql://", "root", "mustaine");  
     System.out.println("A conexão foi um sucesso\n");  
}  
catch (SQLException ex)  
{  
     System.out.println("SQL Exception... Erro na conexão");  
}  
          
try  
{  
     stm = conexao.prepareStatement(mudar);  
}  
catch (SQLException ex)  
{  
     System.out.println("SQL Exception... Erro ao criar objeto Statement:");  
}  
          
try  
{     
     stm.setString(1, nome);  
     stm.setString(2, endereco);  
     stm.setString(3, telefone);  
     stm.setInt(4, peso);  
     stm.setString(5, altura);  
     stm.setDate(6, dataInscSql);  
     stm.setDate(7, dataVencSql);  
     stm.setInt(8, ID);  
     stm.executeUpdate();  
     JOptionPane.showMessageDialog(mainPanel, "Pessoa editada com sucesso!", "Confirmacao", JOptionPane.INFORMATION_MESSAGE);  
}   
catch (SQLException ex)  
{  
     System.out.println("SQL Exception... Erro na consulta");  
}  
          
try  
{  
     System.out.println("\nFechando a conexão...");  
     conexao.close();  
     System.out.println("\nConexão fechada");  
     return true;  
}  
catch(SQLException erro)  
{  
      System.out.println("Erro no fechamento");  
}  
        return false;
}

Que erro? cola a exception ai!

Usando isso: catch (SQLException ex) { System.out.println("SQL Exception... Erro ao criar objeto Statement:"); }

Você nunca vai saber o que está errado. Manda imprimir o erro de deve dizer o que está dando de errado.

O erro que está dando é este: “com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘= ‘Fulano Editado’, Endereco = ‘cvbcxvbcxbxc’, Telefone = ‘567567’, Peso = 87, A’ at line 1”

Coloca um espaço em brando no final das linhas do update:

"UPDATE academia.pessoas "    
                + "SET Nome = ?, Endereco = ?, Telefone = ?, Peso = ?, Altura = ?, Data_Inscricao = ?, Data_Vencimento = ? "    
                + "WHERE ID = ?";  

Depois faz um teste.

Com o espaço funcionou :smiley:
Tu sabe porque ele precisa desse espaço? Muito estranho.
Muito obrigado romarcio.

[quote=Cowboy From Hell]Com o espaço funcionou :smiley:
Tu sabe porque ele precisa desse espaço? Muito estranho.
Muito obrigado romarcio.[/quote]

Sim, por que senão o Mysql recebe a instrução assim: UPDATE academia.pessoasSET Nome = ?, Endereco = ?, Telefone = ?, Peso = ?, Altura = ?, Data_Inscricao = ?, Data_Vencimento = ?WHERE ID = ?

Dai ele se perde, não sabe o que é academia.pessoasSET e ?WHERE