读书人

mysql获取刚刚insert的记录ID

发布时间: 2012-07-23 09:42:19 作者: rapoo

mysql获取刚insert的记录ID

?当数据库表的主键使用mysql的自增ID时,获取一条刚插入的记录的ID可以?使用:

rs = pstmt.getGeneratedKeys();
if(rs.next()) {
??????? personId = rs.getInt(1);
}

?

附程序中的一个例子:

?????

public int addPerson(Person person) {int personId = 0;Connection conn = null;PreparedStatement pstmt = null;ResultSet rs = null;try {String sql = "INSERT INTO t_person(personname, gender, age, address, duty, phone, description, receivesms) VALUES(?, ?, ?, ?, ?, ?, ?, ?)";conn = DB.getConn();pstmt = DB.prepareStmt(conn, sql);pstmt.setString(1, person.getPersonname());pstmt.setString(2, person.getGender());pstmt.setInt(3, person.getAge());pstmt.setString(4, person.getAddress());pstmt.setString(5, person.getDuty());pstmt.setString(6, person.getPhone());pstmt.setString(7, person.getDescription());pstmt.setInt(8, person.isReceivesms() ? 1 : 0);pstmt.executeUpdate();rs = pstmt.getGeneratedKeys();if(rs.next()) {personId = rs.getInt(1);}} catch (SQLException e) {e.printStackTrace();} finally {DB.close(pstmt);DB.close(conn);}return personId;}

?

?

读书人网 >Mysql

热点推荐