Olá pessoal,
eu não estou conseguindo
retornar a chave primaria do meu endereço
será que alguém poderia me dar uma ajuda fazendo o favor?
public int salvarEndereco(Endereco endereco) throws LAFQADaoException {
PreparedStatement ps = null;
Connection conn = null;
if (endereco == null)
throw new LAFQADaoException("o valor passado não pode ser lido");
try {
String sql = "INSERT INTO endereco(rua, numero, bairro, " +
"cidade, estado, cep, uf)"
+ "VALUES(?,?,?,?,?,?,?)";
conn = this.conn;
ps = conn.prepareStatement(sql);
ps.setString(1, endereco.getRua());
ps.setInt(2, endereco.getNumero());
ps.setString(3, endereco.getBairro());
ps.setString(4, endereco.getCidade());
ps.setString(5, endereco.getEstado());
ps.setString(6, endereco.getCep());
ps.setString(7, endereco.getUf());
ps.executeUpdate();
//Retorna o id do endereco cadastrado
//Não sei como retornar a chave primaria???
//Não dá certo o que fiz???
return Integer.parseInt(ps.getGeneratedKeys().getString(1);
}
catch (Exception sqle) {
throw new LAFQADaoException("Erro ao inserir dados" + sqle);
} finally {
try {
ConnectionFactory.closeconnection(conn, ps);
}
catch (SQLException ex) {
Logger.getLogger(ProdutorDao.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
[]'s.