powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Глюки в SQL-DMO
3 сообщений из 3, страница 1 из 1
Глюки в SQL-DMO
    #32206925
aag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!
Выполняю запросы через 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
Глюки в SQL-DMO
    #32207060
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
RowCount посмотри:
0 - количество вернутых записей = 0;
1 - количество вернутых записей <> 0.
...
Рейтинг: 0 / 0
Глюки в SQL-DMO
    #32207274
aag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RowCount где смотреть? И что дальше делать?
Количество возвращенных записей я и так могу определить - QueryResults.Rows
Проблема как отличить случай, когда рекордсет вообще не возвращается (напр. DDL-оператор) от случая, когда он возвращается, но записей в нем нет.
И проблема, как избавится от ошибки во втором случае.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Глюки в SQL-DMO
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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