Boa tarde
Estou fazendo uma aplicação em Java Desktop, e tenho um JFrame para marcação de consulta. Só que a lógica que fiz não está inserindo nada no banco.
Ele faz um select no banco para puxar os dados, se eles forem iguais ele não insere, mas como a tabela está vazia ele não entra no loop
O que será que está errado?
private void btnOKActionPerformed(java.awt.event.ActionEvent evt) {
getNumConv = Integer.parseInt(cpNumConv.getText());
getNumCpf = cpNumCpf.getText();
getEspec = (String) cbEspec.getSelectedItem();
getNomeMed = (String) cbNomeMed.getSelectedItem();
getData = (String) cbData.getSelectedItem();
getHora = (String) cbHora.getSelectedItem();
try{
conSql.conectaSQL();
conSql.RS = conSql.getStatement().executeQuery("Select dataAgendamento, horarioAgendamento from Agendamento");
String data = ("");
String hora = ("");
int i = 0;
// se for a primeira marcação de consulta ele entrara aqui
if (conSql.RS.first()){
System.out.println("entrei no 1º IF");
int resultado = conSql.getStatement().executeUpdate("insert into Agendamento"
+ "(horarioAgendamento, dataAgendamento, nomeMedico, codCliente) "
+ "values('"+getHora+"', '"+getData+"', '"+getNomeMed+"', '"+getNumConv+"') " );
if (resultado >0){
JOptionPane.showMessageDialog(this , "Dados salvos com sucesso!");
} else{
JOptionPane.showMessageDialog(this, "Erro ao tentar Salvar os dados!");
}
}
else { // se não for ele entrara no loop para fazer a comparação da data e hora escolhidos
while(conSql.RS.next()){
data = (conSql.getResultSet().getString("dataAgendamento"));
hora = (conSql.getResultSet().getString("horarioAgendamento"));
if(data.equals(getData) && hora.equals(getHora))
{
JOptionPane.showMessageDialog(this, "O horario escolhido está reservado");
}
else {
//Comando
int resultado = conSql.getStatement().executeUpdate("insert into Agendamento"
+ "(horarioAgendamento, dataAgendamento, nomeMedico, codCliente) "
+ "values('"+getHora+"', '"+getData+"', '"+getNomeMed+"', '"+getNumConv+"') " );
if (resultado >0){
JOptionPane.showMessageDialog(this , "Dados salvos com sucesso!");
} else{
JOptionPane.showMessageDialog(this, "Erro ao tentar Salvar os dados!");
}
i++;
}
} // fim do while
}
} catch (SQLException e){ // trata os erros
JOptionPane.showMessageDialog(this, "Erro Cmdo SQL "+e.getMessage());
}
}