2015-02-11 111 views
0

我正在使用keyholder來獲取在插入時自動遞增的id。它在實際的表上工作正常。在插入表格後返回id的自動增量值

我在另一個數據庫中有一個同義詞表,它實際上指向原始表,我必須對同義詞表進行插入。當我嘗試在同義詞表中執行插入操作時,使用的方法將爲keyholder.getkey()返回0。請幫我..

參考文獻: https://stackoverflow.com/questions/241003/how-to-get-a-value-from-the-last-inserted-row http://docs.spring.io/spring/docs/2.5.x/reference/jdbc.html#jdbc-auto-genereted-keys

地址:

我已經試過

String sql = "INSERT INTO table (column1, column2) values(?, ?)"; 
stmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS); 
stmt.executeUpdate(); 
if(returnLastInsertId) { 
    ResultSet rs = stmt.getGeneratedKeys(); 
    rs.next(); 
    auto_id = rs.getInt(1); 
} 

但這回0了。爲什麼這不在同義詞表中工作?我的意思是插入自動增加的值,但返回'0'。

回答

0

對於任何有同樣問題的人,我使用了一個名爲getSerial()的函數來獲得序列號。 感謝您檢查!