COMO FAZER UM INSERT NO MYSQL USANDO O JTextField [RESOLVIDO]

BOM DIA PESSOAL,
ESTOU FAZENDO UM MINI PROGRAMA COM INTERFACES GRÁFICAS E CONEXÃO AO BANCO MYSQL.
MINHA PROBLEMA É O SEGUINTE , QUANDO APERTAR NO BOTÃO “OK” GERA UM EVENTO ONDE OS JTEXTFIELD PREENCHIDOS VÃO PARA O BANCO, O EVENTO E A CONEXAO ESTÃO NORMAL SEM ERRO, MAS O ERRO GERA NA HORA DE INSERIR OS DADOS …
GOSTARIA DE UMA AJUDA NO INSERT…

OLHA O CÓDIGO…

[code]

String a=txtnome.getText();
String b=txtcpf.getText();
String c=txtendereco.getText();
String d=txtcidade.getText();
String e=txtbairro.getText();

        			      String sql="(INSERT INTO login(nome,cpf,endereco,cidade,bairro VALUES (?,?,?,?,?)";
        			      java.sql.PreparedStatement pstmt=conn.prepareStatement(sql);
        	               
        	              pstmt.setString(1,a ); 
        	              pstmt.setString(2,b);
        	              pstmt.setString(3,c );
        	              pstmt.setString(4,d );
        	              pstmt.setString(5, e);
        	            
        	              
        	              
        	            int r=  stm.executeUpdate(sql);

vc tem configurar no seu build path o driver de conexão com o MySQL. Após isso, vc deve ser conectar ao banco de dados pra executar qq comando sql. Dá uma sacada:

import java.sql.Connection;
import java.sql.DriverManager;

public class ConnectionFactory
{
	protected ConnectionFactory() {}
	
	public static Connection getConnection() throws Exception
	{
		try
		{
			Class.forName("com.mysql.jdbc.Driver");
			Connection conn = DriverManager.getConnection ("jdbc:mysql://[databasehost]/[databasename], "root", "root");
			return conn;
		}
		catch (Exception e)
		{
			throw e;
		}
	}
}

Esse é a ConnectionFactory de onde vc vai gerar a conexão com o banco de dados. Agora vc executa o comando que quiser:

try
{
	Connection conn = ConnectionFactory.getConnection();
	PreparedStatement stmt = this.conn.prepareStatement("INSERT INTO Cliente (nome, endereco, telefone, celular, fax, email, cpf, rg, dataNascimento, sexo, tipoCliente) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
	
	stmt.setString(1, cliente.getNome());
	stmt.setString(2, cliente.getEndereco());
	stmt.setString(3, cliente.getTelefone());
	stmt.setString(4, cliente.getCelular());
	stmt.setString(5, cliente.getFax());
	stmt.setString(6, cliente.getEmail());
	stmt.setString(7, cliente.getCpf());
	stmt.setString(8, cliente.getRg());
	stmt.setString(9, DataHora.formatarData(cliente.getDataNascimento()));
	stmt.setString(10, cliente.getSexo());
	stmt.setString(11, cliente.getTipoCliente());
	
	stmt.execute();
	stmt.close();
	this.conn.close();
}
catch (Exception e)
{
	System.out.println(e.getMessage());
}

Amigo, na sua sql, vc abriu parênteses demais, e um q vc esqueceu de fechar. Troca por essa linha:

VALEW PESSOAL!
DEU CERTO AGORA GRAÇAS A VC6 , FICOU ASSIM OH…
java.sql.PreparedStatement pstmt=conn.prepareStatement(“INSERT INTO login(nome,cpf,endereco,cidade,bairro) VALUES (?,?,?,?,?)”);

        	              pstmt.setString(1,txtnome.getText()); 
        	              pstmt.setString(2,txtcpf.getText());
        	              pstmt.setString(3,txtendereco.getText());
        	              pstmt.setString(4,txtcidade.getText());
        	              pstmt.setString(5,txtbairro.getText());
        	            
        	              pstmt.execute();