sql语句是这样写的
然后执行sql并判断
我这样判断是错的,因为没有注册过的账号都是已注册的。请问要怎么写才能正确检测有没有被注册呢
首先,你这个rs是查询返回的ResutSet对象,不可能为空的;
其次,判断是否查到结果是通过这个查询结果的值是否为0,你查询的是count,如果查到数据就是1,没有就是0。
所以你的判断不对,修正代码如下:
rs=stmt.executeQuery(sql2);
if(rs.next()){
int count = rs.getInt();
if(count==0){
System.out.print("未注册");
addData();
}else{
System.out.print("已注册");
}
}else{
System.out.print("没有查询到记录");
}
因为你是select count操作,所以肯定会返回一条记录的,如果要通过是否查找记录判断,应该是select name from xx where name=''
这样如果没有next说明没查到。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。