Java JDBC入门之十 : 获取数据库自动生成的主键值
Dome
public class JDBCTest {
@Test
public void testGetKeyValue() {
Connection connection = null;
PreparedStatement preparedStatement = null;
ResultSet resultSet = null;
try {
connection = JDBCTools.getConnection();
String sql = "INSERT INTO customers(name, email, birth)"
+ "VALUES(?,?,?)";
preparedStatement = connection.prepareStatement(sql,
Statement.RETURN_GENERATED_KEYS);
preparedStatement.setString(1, "123456");
preparedStatement.setString(2, "12321@qq.com");
preparedStatement.setDate(3, new Date(new java.util.Date().getTime()));
preparedStatement.executeUpdate();
resultSet = preparedStatement.getGeneratedKeys();
if(resultSet.next()) {
System.out.println(resultSet.getObject(1));
}
ResultSetMetaData rsmd = resultSet.getMetaData();
for (int i = 0; i < rsmd.getColumnCount(); i++) {
System.out.println(rsmd.getColumnName(i + 1));
}
} catch (Exception e) {
e.printStackTrace();
}finally {
JDBCTools.releaseDB(null, preparedStatement, connection);
}
}
}