获取 mysql 中上次插入的自动增量 ID

2022-09-03 03:17:48

我正在尝试获取像mysql_insert_id()这样的mysql命令;检索最后插入行的auto_increment ID。我能做些什么来在Java中获取它?

rs = st.executeQuery("select last_insert_id() from schedule");
lastid = rs.getString("last_insert_id()");

我的 lastid 被宣布为 INT。我不知道在rs.get中使用什么以及参数。


答案 1

使用 JDBC,您可以使用 Connection.PreparedStatement(query, int) 方法。

PreparedStatement pstmt = conn.prepareStatement(Query, Statement.RETURN_GENERATED_KEYS);  
pstmt.executeUpdate();  
ResultSet keys = pstmt.getGeneratedKeys();    
keys.next();  
key = keys.getInt(1);

答案 2

尝试使用别名

rs = st.executeQuery("select last_insert_id() as last_id from schedule");
lastid = rs.getString("last_id");

推荐