隨筆-35  評論-97  文章-0  trackbacks-0

                 某些時候,你插入一條記錄后要馬上知道剛才插入記錄的id(自增類型),那么下面的方面可以滿足你的要求:

                  Connection conn = ;
                  Serializable ret 
          = null;
                  PreparedStatement state 
          = .;
                  ResultSet rs
          =null;
                  
          try {
                      state.executeUpdate();
                      rs 
          = state.getGeneratedKeys();
                      
          if (rs.next()) {
                          ret 
          = (Serializable) rs.getObject(1);
                      }
                 
                  }
           catch (SQLException e) {
                  }
           
                  
          return ret;

           

           

          posted on 2007-06-29 18:35 三告習習 閱讀(1609) 評論(2)  編輯  收藏 所屬分類: database

          評論:
          # re: [database] 獲取數據庫自增類型生成的主鍵的方法 2007-07-02 09:35 | paul
          看不太明白,可以給分析下么?  回復  更多評論
            
          # re: [database] 獲取數據庫自增類型生成的主鍵的方法 2007-07-02 14:12 | 三告習習
          @paul
          不好意思,或許寫得不是很清楚,下面做一些注釋

          Connection conn = ... //這里是你的數據庫連接
          PreparedStatement state = this.connection.createStatement();//這個可以這樣獲取
          state.executeUpdate();這句執行后,如果你是利用了數據庫生成主鍵的辦法來填充主鍵自動,rs = state.getGeneratedKeys();可用獲取state所產生的主鍵,作為ResultSet的類型返回。
          if (rs.next()) {//如果返回不為empty,那么取第一數據
          ret = (Serializable) rs.getObject(1);//第一個字段值就是
          }

          上面的代碼是我重代碼中抽取出來的,所以并不是一個完整的函數,稍修改一下就可以使用了。  回復  更多評論
            
          主站蜘蛛池模板: 阿坝| 潞西市| 女性| 阿克苏市| 昌平区| 华容县| 新民市| 西和县| 惠来县| 桃源县| 望谟县| 东乡族自治县| 孝义市| 尚义县| 高尔夫| 乌鲁木齐县| 长白| 民乐县| 搜索| 清新县| 日照市| 邳州市| 离岛区| 崇仁县| 二连浩特市| 马关县| 东丰县| 毕节市| 临江市| 喜德县| 北辰区| 缙云县| 聂荣县| 屯留县| 高陵县| 永年县| 通州区| 兰溪市| 诏安县| 祥云县| 云南省|