Как получить только первый ряд из ResultSet - PullRequest
18 голосов
/ 27 апреля 2011

Как мне получить только первый ряд из ResultSet? Я знаю, как перебирать весь набор, но как мне получить только первый ряд?

Ответы [ 4 ]

42 голосов
/ 27 апреля 2011

Вместо того, чтобы повторять набор результатов, просто проверьте, существует ли запись и прочитайте ее:

ResultSet r = ...;
if(r.next()) {
  String s = r.getString(1);
  ...
}
4 голосов
/ 27 апреля 2011

Не вызывайте resultSet.next();, просто извлеките данные,

Объект ResultSet поддерживает курсор, указывающий на его текущую строку данных.Первоначально курсор располагается перед первым рядом.Следующий метод перемещает курсор на следующую строку, и, поскольку он возвращает false, когда в объекте ResultSet больше нет строк, его можно использовать в цикле while для итерации по набору результатов.

В качестве альтернативы Вы также можете вызвать first()

Перемещает курсор на первую строку в этом объекте ResultSet.


2 голосов
/ 05 августа 2016

В моем случае хорошо работает следующий подход:

ResultSet RSet  = ...;
RSet.next();
Integer TestType = RSet.getInt("Type");
0 голосов
/ 22 мая 2019

Вы можете использовать absolute для перехода к первому ряду:

ResultSet rs = ...;
rs.absolute(1); // Navigate to first row
int id = rs.getInt("id");
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...