2010年10月11日

          如果說是"判斷結果集里有沒有值" 那么用if(rs.next)

          while是用來做循環輸出的 換句話說 就是"如果結果集里還有值" 沒有則停止循環 這個一般在JSP做顯示用

          1rs = stmt.exeQuery(sql)后,rs肯定不會為null,注意,是rs對象不會為null,而不是其包含的result
          2、既然rs不會為null,所以在rs = stmt.exeQuery(sql)后,使用while(rs.next())或者if(rs.next())時就不用判斷rs != null;
          3、rs.next時,游標最先是指向第一條記錄前的位置,所以第一次rs.next后,游標指向的正好是第一條記錄(如果有的話)
          4、要判斷rs的結果是否為空,只要使用一次rs.next方法就行了,如果它返回為false,則證明rs的結果為null
          所以最終的代碼可以寫為:
              public void run() {
                  DbTestConn conn = new DbTestConn();
                  String sql = "select * from mo_info where mo_state = '1'";
                  ResultSet rs = conn.exeQuery(sql);
                  //while (!isNull) {
                      try {
                          while (rs.next()) {
                              tr.setId(rs.getInt(1));
                              tr.setUser(rs.getString(2));
                              tr.setPwd(rs.getString(3));
                              //isNull = false;
                          }
                      } catch (SQLException e) {
                          //isNull = true;
                          e.printStackTrace();
                      }
                  //}
              }

          說的簡單的話就是
          while(rs.next()) //就是 將rs全部進行讀取
          if(rs.next()) //rs進行讀取一次 判斷是否有數據

          posted @ 2010-10-11 16:36 Elvin Lee 閱讀(1732) | 評論 (0)編輯 收藏


          posts - 1, comments - 0, trackbacks - 0, articles - 0

          Copyright © Elvin Lee

          主站蜘蛛池模板: 和顺县| 江北区| 高唐县| 淮南市| 郑州市| 武清区| 高淳县| 古丈县| 涟水县| 友谊县| 英德市| 浦县| 梁平县| 都兰县| 鸡泽县| 太原市| 新竹县| 连江县| 遂川县| 长治市| 玛曲县| 太保市| 天柱县| 石城县| 文安县| 抚宁县| 马尔康县| 济南市| 保亭| 武汉市| 彰化县| 政和县| 丰顺县| 安新县| 江西省| 八宿县| 玛多县| 滨州市| 萨嘎县| 平罗县| 施甸县|