|
14.07.2006, 12:43 | #1 |
Гость
|
Проблема с ResultSet
Всем, добрый день.
Столкнулвся вот с какой проблемой: надо получить данные по ODBC из сторонней базы по определенному условию. Все бы хорошо, задача элементраная, но вот в чем проблема, когда в результате выполенения запроса ничего нет, то все довольно плохо. Делаю так : ResultSet _result1; .... _result1=_state.executeQuery(<запрос>) .... Вопрос как обнаружить, что в результате запроса данных нет(не подпали под необходимое условие). Соответственно при попытке получения строки _result1.GetString(1) происходит ошибка.Я перекопал все методы ResultSet, но ничего подходящего не нашел. Подскажите как быть? |
|
14.07.2006, 12:46 | #2 |
Участник
|
А вы делаете _result1.next() до вызова GetString(1)
потому что насколько я помню, там курсос изначально позиционируется до первой записи, а не на ней. А next() устаналвивает курсор на первую запись выборки. А если такой строки нет, то он вернет false() то есть, просто нужно написать while (_result1.next()) { //обработка. } Извиняюсь, если не прав. |
|
14.07.2006, 12:47 | #3 |
Moderator
|
Посмотрите хелп по классу ResultSet. Вот пример оттуда:
X++: while ( ResultSet.next() ) { print ResultSet.getString(1); }
__________________
Андрей. |
|
14.07.2006, 14:18 | #4 |
Гость
|
Да, проблема оказалось именно в том что сразу после Result вызывал getString.
|
|