隨筆-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 三告習習 閱讀(1603) 評論(2)  編輯  收藏 所屬分類: database

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

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

          上面的代碼是我重代碼中抽取出來的,所以并不是一個完整的函數(shù),稍修改一下就可以使用了。  回復  更多評論
            
          主站蜘蛛池模板: 昔阳县| 衡山县| 扶风县| 滁州市| 英吉沙县| 福州市| 崇左市| 陵水| 宜兰县| 新巴尔虎右旗| 怀化市| 囊谦县| 甘谷县| 平利县| 昌都县| 龙山县| 洪泽县| 宣武区| 温泉县| 思南县| 浮梁县| 阿荣旗| 康定县| 平和县| 同德县| 揭阳市| 遵化市| 玉溪市| 阳曲县| 柳州市| 巴中市| 鄂伦春自治旗| 红安县| 鄯善县| 屏边| 巴楚县| 平凉市| 连南| 措美县| 秭归县| 修文县|