![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ошибка при закрытии набора данных ADODB при работе с Access [D5, Access]
vvip © (2003-05-14 08:47:00)Помогите разобраться?
Использую компонент TADOQuery из стандартной палитры "ADO" в Delphi для соединения с базой данных на аксессе.
В звпросе к БД - select ... from Таблица.
Если запрос возвращает какие-нибудь данные, то все работает замечательно, а вот если под условие выборки не попадает ни одной строки, то при попытке закрыть запрос:
ADOQuery.Close;
возникает exception: "EOleException - BOF или EOF имеет значение True, либо текущая запись удалена. Для выполняемой операции требуется текущая запись"
И все. После этого любое ображение к компоненте вызывает EAccessViolation - попытка чтения по адресу 0000000 и компонент вообще перестает возвращать какие-либо данные.
В чем проблема?
Stas (2003-05-14 14:50:00) [1]AdOQuery1.CursorLocation:=clServer;
-//-.CursorType:=ctKeySet
vvip (2003-05-14 14:43:00) [2]Спасибо. Сейчас скачаю.
Пока решал проблему так:
if ADOQuery.Recordset<>nil then ADOQuery.Recordset.Close;
ADOQuery.Close;
при таком раскладе - не вылетает.
Lord Warlock (2003-05-14 10:12:00) [3]Или с этого сайта из "Кладовки"
Mike_Goblin (2003-05-14 09:55:00) [4]Сильно подозреваю что у Вас Delphi5
проблема в том, что вы не установили ADO Express patch (скачать его можно на сайте Borland)