Запрос может вернуть множественные результаты. Это может произойти при выполнении хранимой процедуры или в базах данных, которые позволяют также выполнение множества операторов SELECT в одном запросе. Ниже показано, как можно получить все множественные наборы:
- Используйте метод execute для выполнения оператора SQL.
 - Получите первый результат или обновите подсчет.
 - Повторите вызов метода getMoreResults(), чтобы перейти к следующему результирующему набору. Этот метод автоматически закрывает предыдущий результирующий набор.
 - Процедура завершается, когда заканчиваются результирующие наборы или обновленные подсчеты.
 
Методы execute и getMoreResults возвращает значение true, если следующим элементом в соединении является результирующий набор. Метод getUpdateCount возвращает значение -1, если следующим элементом в соединении не является обновление подсчета.
Следующий цикл проходит по всем результатам:
| 
					 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19  | 
						boolean done = false; boolean isResult = stmt.execute(command); while(!done) {     if(isResult)     {         ResultSet result = stmt.getResultSet();         // тут какие либо действия с result...     }     else     {         int updateCount = stmt.getUpdateCount();         if(updateCount >= 0)             // какие либо действия с updateCount...         else             done = true;     }     isResult = stmt.getMoreResults(); }  | 
					
Кстати, метод boolean getMoreResults() получает следующий результат для следующего оператора. Возвращает значение true, если следующий результат существует, и он является результирующим набором.
