Eu fiz um insert para o banco de dados e qualquer botão que aperto seja de cancelar, ok ou fechar ele tá inputando no banco, eu gostaria de saber se tem como fazer com que os botoes de fechar e cancelar não inputem os dados casos sejam clicados.
Se alguém puder me ajudar.
try {
Class.forName("org.firebirdsql.jdbc.FBDriver").newInstance();
con = DriverManager.getConnection(url, username, password);
String s= JOptionPane.showInputDialog("Nome de usuário:");
PreparedStatement p = con.prepareStatement(inserir);
Date data = new Date(System.currentTimeMillis());
p.setString(1,s);
p.setString(2,"teste");
p.setDate(3, new java.sql.Date(data.getTime()));
p.executeUpdate();
System.out.println("insert realizado com sucesso!");
}
catch(Exception ex) {
JOptionPane.showMessageDialog(null,"Conexão recusada!\nErro no " + ex.getMessage());
System.exit(1);
É um evento padrão de input do JOptionPane, no código que fiz, eu faço um try com a conexão com o banco, se ele conectar vai para o input do Joptiopane, aparece a tela de input mas ai qualquer botão que eu aperto ele insere no banco.
String s = JOptionPane.ShowInputDialog(null,"Nome do Usuário");
if (s == null) System.exit(1);
else
{
PreparedStatement p = con.prepareStatement(inserir);
Date data = new Date(System.currentTimeMillis());
p.setString(1,s);
p.setString(2,"teste");
p.setDate(3, new java.sql.Date(data.getTime()));
p.executeUpdate();
System.out.println("insert realizado com sucesso!");
}
String s = JOptionPane.ShowInputDialog(null,"Nome do Usuário");
if (s != null || !(s.trim().equals("")))
{
PreparedStatement p = con.prepareStatement(inserir);
Date data = new Date(System.currentTimeMillis());
p.setString(1,s);
p.setString(2,"teste");
p.setDate(3, new java.sql.Date(data.getTime()));
p.executeUpdate();
System.out.println("insert realizado com sucesso!");
}