2015-06-03 2 views
0

Используя образец кода здесь: https://github.com/davidmoten/rxjava-jdbcRxJava-Jdbc 0.5.7: Как получить последний идентификатор вставки?

Как получить последний вставить идентификатор из MySQL?

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

Предпочитает использовать Неблокирующая Реактивная шаблон

В JDBC я мог так что-то вроде этого:

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

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

ответ

0

Согласно документации:

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

Так , если вы хотите, чтобы конкретный Int eger вместо наблюдаемого вы можете сделать:

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

Надеюсь, это поможет.

Смежные вопросы