插入表后返回id的自动增量值

时间:2015-02-11 22:00:59

标签: spring auto-increment

我正在使用keyholder来获取插入时自动递增的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

ADD:

我试过了

 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'。

1 个答案:

答案 0 :(得分:0)

对于有同样问题的人,我使用了一个名为getSerial()的函数来获取序列号。 谢谢你退房!