Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Глюки в SQL-DMO / 3 сообщений из 3, страница 1 из 1
14.07.2003, 12:07
    #32206925
aag
aag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Глюки в SQL-DMO
Добрый день!
Выполняю запросы через SQL-DMO
Код: plaintext
1.
2.
3.
...
    QResult := SQLServer.Databases.Item(IIndex, FOwner).ExecuteWithResultsAndMessages(SQLText, Length(SQLText), Msg);
...
      S1 := QResult.GetRangeString( 1 ,  1 , QResult.Rows, QResult.Columns, EmptyParam, EmptyParam, EmptyParam);

Если исполняемый запрос не возвращает строк, то возникает эксепшн
"[SQL-DMO]This cache contains no result sets, or the current result set contains no rows".
Ну что ж, все логично. Если запрос возвращает рекордсет, то S1 содержит его содержимое и тоже все хорошо. А вот если запрос возвращает рекордсет, в котором НЕТ записей (ну пустая таблица оказалась!), то после вызова GetRangeString следующий вызов поднимает экспешн "Row or column specified is outside the range of the specified query result set". И далее на любой вызов следует OLE Error 80045314.
Что же с этой заразой делать? Обходной путь в принципе я нашел - просто не вызывать GetRangeString, если нет строк, но это не очень хорошее решение...
...
Рейтинг: 0 / 0
14.07.2003, 13:16
    #32207060
eNose
Участник
[не активирован]
[не одобрен]
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Глюки в SQL-DMO
RowCount посмотри:
0 - количество вернутых записей = 0;
1 - количество вернутых записей <> 0.
...
Рейтинг: 0 / 0
14.07.2003, 15:02
    #32207274
aag
aag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Глюки в SQL-DMO
RowCount где смотреть? И что дальше делать?
Количество возвращенных записей я и так могу определить - QueryResults.Rows
Проблема как отличить случай, когда рекордсет вообще не возвращается (напр. DDL-оператор) от случая, когда он возвращается, но записей в нем нет.
И проблема, как избавится от ошибки во втором случае.
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Глюки в SQL-DMO / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]