RxJava-Jdbc 0.5.7:如何获取最后一个插入ID?

时间:2015-06-03 03:34:14

标签: mysql jdbc rx-java

使用此处的代码示例: https://github.com/davidmoten/rxjava-jdbc

如何从mysql获取最后一个插入ID?

database.update("insert into person(name,sex,age,dob) values(?,?,?,?)")
.parameters(person.getName(), person.isMale(), person.getAge(), person.getDob());

更喜欢使用NonBlocking Reactive Pattern

在JDBC中我可以这样:

Statement stmt = db.prepareStatement(query, Statement.RETURN_GENERATED_KEYS);
numero = stmt.executeUpdate();

ResultSet rs = stmt.getGeneratedKeys();
if (rs.next()){
    risultato=rs.getInt(1);
}

1 个答案:

答案 0 :(得分:0)

根据文件:

Observable<Integer> key = db.update("insert into note(text) values(?)")
  .parameter("hello", "there")
  .returnGeneratedKeys()
  .getAs(Integer.class);

因此,如果你想要具体的Integer值而不是Observable,你可以这样做:

Observable<Integer> key = db.update("insert into note(text) values(?)")
  .parameter("hello", "there")
  .returnGeneratedKeys()
  .getAs(Integer.class);

我希望这会有所帮助。