public void cadastraClienteBD(String[] str){
try {
Class.forName(driver);
Connection conn = (Connection) DriverManager.getConnection(str_conn, usuario, senha);
Statement stmt = (Statement) conn.createStatement();
String cadCliente = "insert into tb_cliente(Cliente, EnderecoNum, Bairro, Cidade, Estado, CEP, CPF, DataC, email, TelRes, TelCom, TelCell) values(?,?,?,?,?,?,?,?,?,?,?,?);";
try{
PreparedStatement queryInsert = (PreparedStatement) conn.prepareStatement(cadCliente);
queryInsert.setString(1, str[0]);
queryInsert.setString(2, str[1]);
queryInsert.setString(3, str[2]);
queryInsert.setString(4, str[3]);
queryInsert.setString(5, str[4]);
queryInsert.setString(6, str[5]);
queryInsert.setString(7, str[6]);
queryInsert.setString(8, str[7]);
queryInsert.setString(9, str[8]);
queryInsert.setString(10, str[9]);
queryInsert.setString(11, str[10]);
queryInsert.setString(12, str[11]);
queryInsert.execute();
queryInsert.close();
}catch(Exception exc){
JOptionPane.showMessageDialog(null, "Problema na inserção de dados");
}
}
catch (ClassNotFoundException ex) {
System.out.println("Não foi possível carregar o driver.");
ex.printStackTrace();
}
catch (SQLException ex) {
System.out.println("Problema com o SQL");
ex.printStackTrace();
}
}
incerção de dados no mysql através do java
S
to com um problema na incerção de dados no mysql
eu só consigo inserir dados uma vez, e depois da erro na icerção
segue o código:
2 Respostas
M
na verdade eu sou bem “verde” em programação, mas a forma que eu faço é a seguinte
voce seta os dados para o objeto em outra classe da aplicação, passa por parametro e busca eles nesta, ex:
tirei o try/catch para resumir o meu ponto de vista.
Não sei se é esse o motivo do teu erro, mas tentei :oops:
public void cadastraClienteBD(Cliente c){
Class.forName(driver);
Connection conn = (Connection) DriverManager.getConnection(str_conn, usuario, senha);
Statement stmt = (Statement) conn.createStatement(); //não está sendo usado o Statement
String cadCliente = "insert into tb_cliente(Cliente, EnderecoNum, Bairro, Cidade, Estado, CEP, CPF, DataC, email, TelRes, TelCom, TelCell) values(?,?,?,?,?,?,?,?,?,?,?,?);";
PreparedStatement queryInsert = (PreparedStatement) conn.prepareStatement(cadCliente);
queryInsert.setString(1, c.getCliente());
queryInsert.setString(2, c.getEnderecoNum());
queryInsert.setString(3, c.getBairro());
queryInsert.setString(4, c.getCidade());
queryInsert.setString(5, c.getEstado());
queryInsert.setString(6, c.getCEP());
queryInsert.setString(7, c.getCPF());
queryInsert.setString(8, c.getDataC());
queryInsert.setString(9, c.getEmail());
queryInsert.setString(10, c.getTelRes());
queryInsert.setString(11, c.getTelCom());
queryInsert.setString(12, c.getTelCell());
queryInsert.execute();
queryInsert.close();
S
Agradeço muito a ajuda
eu já resolvi
o problema é pq na minha tabela tinha um atributo como primary key sem auto incremento, por isso ele fazia apenas uma inserção
tbm começei a pouco tempo !
muito obrigado pela atenção !
Criado 7 de dezembro de 2010
Ultima resposta 8 de dez. de 2010
Respostas 2
Participantes 2
Alura O que é Python? — um guia completo para iniciar nessa linguagem de programação Acesse agora o guia sobre Python e inicie sua jornada nessa linguagem de programação: o que é e para que serve, sua sintaxe e como iniciar nela!
Casa do Codigo Engenharia de Prompt para Devs: Um guia para aprender a... Por Ricardo Pupo Larguesa — Casa do Codigo