程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> select-java注冊時檢查用戶名有沒有被注冊

select-java注冊時檢查用戶名有沒有被注冊

編輯:編程解疑
java注冊時檢查用戶名有沒有被注冊

sql語句是這樣寫的String sql2="SELECT count(*) from 表名 where name='"+賬號名+"'";
然後執行sql並判斷
rs=stmt.executeQuery(sql2);
if(rs==null){
System.out.print("未注冊");
addData();

    }else{
        System.out.print("已注冊");
    }
    我這樣判斷是錯的,因為沒有注冊過的賬號都是已注冊的。請問要怎麼寫才能正確檢測有沒有被注冊呢

最佳回答:


首先,你這個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說明沒查到。

u010089114
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved