Prezados, bom dia.
Sou novo em programação, e quero uma ajuda de vocês para analisar uma função que criei, uma função para verificar dados iguais, e não deixar fazer a inserção desses dados. Tenho um box carregado com países, e uma jTable que é carregada com os estados de acordo com o país selecionada no box, porém se o pais BRASIL existe o estado A, com a uf A e se for cadastrar A e uf A para outro pais a função esta bloqueando o cadastro, segue meu código:
public boolean verificaDadosIguais(String N, String U, int codPais){
boolean dadosIguais = false;
String nomeBanco = "";
String ufBanco = "";
int idPaisBanco = 0;
try
{
Connection con = Conexao.getConnetion();
Statement stmt;
ResultSet rs;
String sql = "SELECT * FROM estado;";
stmt = con.createStatement();
rs = stmt.executeQuery(sql);
if(qtdLinhasTabela>=1)
{
rs.first();
nomeBanco = rs.getString("nome");
ufBanco = rs.getString("uf");
idPaisBanco = rs.getInt("paisIdPais");
}
if(nomeBanco.equals(N) && ufBanco.equals(U) && (codPais==idPaisBanco))
{
JOptionPane.showMessageDialog(null, "OS DADOS QUE VOCÊ ESTÁ TENTANDO INSERIR "
+ "JÁ SÃO EXISTENTES NO BANCO.", "DUPLICIDADE DE DADOS", JOptionPane.WARNING_MESSAGE);
dadosIguais = true;
rs.close();
}
else
{
while(rs.next())
{
if(N.equals(rs.getString("nome")) && U.equals(rs.getString("uf")) && (idPaisBanco == codPais))
{
JOptionPane.showMessageDialog(null, "OS DADOS QUE VOCÊ ESTÁ TENTANDO INSERIR "
+ "JÁ SÃO EXISTENTES NO BANCO.", "DUPLICIDADE DE DADOS", JOptionPane.WARNING_MESSAGE);
dadosIguais = true;
break;
}
}
}
}
catch (SQLException ErroSql)
{
JOptionPane.showMessageDialog(null, "ERRO NA FUNÇÃO verificaDadosIguais();",
"ERRO DE SISTEMA.", JOptionPane.ERROR_MESSAGE);
}
return dadosIguais;
}