Bom dia,
Estou fazendo um código para poder colocar em prática a teoria dos livros, e estou com um problema na transformação da data para poder guardá-la no banco de dados.
Eu tenho a data atual: 13/12/2011 em um jtextfield, quando uso o .getText(); e tento inciailizar uma váriavel do tipo data com a string, me retorna um valor do tipo americano, Tue Dec...
Então, olhando alguns posts aqui, e lendo a API, vi sobre o SimpleDateFormate e também o DateFormatter.
Então, gerei um código:
public void cadastrarEntidade(Entidade e1)
{
try {
Statement status = c.conectar();
SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy");
java.sql.Date data = new java.sql.Date(format.parse(e1.getData_cadastro()).getTime());
String sql = new String("INSERT INTO especialidade(Codigo, CNPJ, Razao_cial, Nome_fantasia, Sigla, Porte_Instituicao, Categoria_Adm, Setor, Site, Data_cadastro, Rua, Numero, Complemento, Bairro, CEP, Cidade, UF, Telefone, Email)"
+ " VALUES('"+e1.getCodigo()+"','"+e1.getCNPJ()+"','"+e1.getRazaoSocial()+"','"+e1.getNome()+"','"+e1.getSigla()+"','"+e1.getPorte()+"','"+e1.getCategoria_adm()+"','"+e1.getSetor()+"','"+e1.getSite()+"','"+data+"','" + e1.getRua() + "','" + e1.getNumero() + "','" + e1.getComplemento()+ "','" + e1.getBairro()+ "','"+ e1.getCep()+ "','"
+ e1.getCidade()+ "','"+ e1.getUF()+ "','" + e1.getTelefone()+ "','" + e1.getEmail()+ "');");
System.out.println(sql);
status.executeUpdate(sql);
}
catch(ParseException ex)
{
System.out.println("parse exception no executar entidade");
}
catch(SQLIntegrityConstraintViolationException ex)
{
JOptionPane.showMessageDialog(null, "Já existe uma entidade com este CNPJ.");
}
catch (SQLException ex) {
System.out.println("exceção lançada no executarEntidade, cadastrarEntidade, sqlexception");
}
finally{
c.fechaConexaoBD();
}
}
Porém, esta lançando uma exceção sqlexception, para me ajudar a descobrir o erro, fiz uma saída, que retornou:
INSERT INTO especialidade(Codigo, CNPJ, Razao_cial, Nome_fantasia, Sigla, Porte_Instituicao, Categoria_Adm, Setor, Site, Data_cadastro, Rua, Numero, Complemento, Bairro, CEP, Cidade, UF, Telefone, Email) VALUES('1','3','','','','Pequena','ONG','','','2011-12-13','','3','','','33333333','','AC','[telefone removido]','');
Estou fazendo o código do SimpleDateFormatter errado ou é em outro lugar?