[b]Estou implmentando uma agenda, e só só quero incluir um e-mail único, ou seja, dois usuários ou mais não poderão ter o msmo e-mail.
Eu quero consultar no Banco de Dados, se a ‘palavra’ (que é o email de algum usuario qualquer), existe no banco de dados.
Implementei, da seguinte, forma:
-o método é boolean, se encontrar vai retornar false, pq o nome ja existe;
-se nao encontrar vai retornar verdadeiro, pq vou poder inserir no banco de Dados;
Não está dando certo, ele nunca entra na estrutura if(), mesmo eu colocando os mesmos valores.
Por favor, alguem puderia tirar a minha duvida, e se tiverem uma forma mais facil de fazer o que estou tentando fazer.
[/b]
//parametros da função
String campo=email;
String palavra=fulano.obterEmail();
String sql=“Select email from usuario where email=”+ “’”+campo+"’";
//Select email from usuario where email=‘[email removido]’
[i]public static boolean consultarUsuario(String palavra, String sql, String campo)
{
//método do tipo boolean pq quero que retorna verdadeiro ou falso
try {
Class.forName("com.mysql.jdbc.Driver");//chamando a classe do driver
String url = "jdbc:mysql://localhost:3306/autenticacao";//criando a url
Connection conectar = DriverManager.getConnection(url,"root","12345678");//conectando
Statement sta = conectar.createStatement();
ResultSet rs;
rs=sta.executeQuery(sql);
if(rs.first()){//indo pro primeiro rs
do{
String caixa = rs.getString(campo);
if(palavra==caixa)
return false;//se encontar igual nome ja existe
}while(rs.next());
return true; //nao encontrou nenhum nome igual
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return true; //nao encontrou nenhum nome igual
}[/i]