Tengo una función que insertar un registro en una base de datos PostgreSQL. Mi pregunta es ¿Cómo puedo obtener el ID del registro insertado ya que la ID se genera automáticamente Este es el código de
postgreSQLClient.getConnection(ar -> {
if(ar.failed())
LOGGER.error("saving message error:", ar.cause());
else{
SQLConnection conn = ar.result();
conn.queryWithParams(insertStr.toString(), sqlParam, rs -> {
conn.close();
Constant.LOGGER.info("Save ID: " +rs.result());
});
}
});
Añadir una cláusula de regresar a su estado de inserción. ver https://www.postgresql.org/docs/current/static/sql-insert.html
Esto es de la documentación vert.x, ver https://vertx.io/docs/vertx-mysql-postgresql-client/java/
Aviso sobre los últimos ids insertados
Al insertar nuevas filas en una tabla, es posible que desee recuperar los identificadores de incremento automático de la base de datos. El API JDBC por lo general le permite recuperar el último ID insertado desde una conexión. Si utiliza MySQL, que funcionará como lo hace igual que el API JDBC. En PostgreSQL puede añadir la cláusula de "volver" para obtener los últimos ids insertados. Utilice uno de los métodos de consulta para obtener acceso a las columnas devueltas.