sqliteでSQL statements in progress エラー

ResultSetをまわしている途中でreturnすると、次のexecuteUpdate時にSQL statements in progressエラーが出た。
while中にreturnするときは、closeしないとだめみたいだ。
sqliteのエラーメッセージになれないと苦労しそうだ

PreparedStatement ps = conn.prepareStatement("select last_insert_rowid()");
ResultSet rs2 = ps.executeQuery();
int id=-1;
while (rs2.next()) {
id=rs2.getInt(1);
ps.close();
return id;
// return rs2.getInt(1);
}