PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

So geben Sie IDs auf Inserts mit Ibatis zurück (mit RETURNING-Schlüsselwort)

Hier ist ein einfaches Beispiel:

<statement id="addObject"
        parameterClass="test.Object"
        resultClass="int">
        INSERT INTO objects(expression, meta, title,
        usersid)
        VALUES (#expression#, #meta#, #title#, #usersId#)
        RETURNING id
</statement>

Und im Java-Code:

Integer id = (Integer) executor.queryForObject("addObject", object);
object.setId(id);

Auf diese Weise besser als verwenden :

  1. Es ist einfacher;
  2. Es wurde nicht angefordert, den Sequenznamen zu kennen (was Postgresql-Entwicklern normalerweise verborgen bleibt).