0 / 0 / 0
Регистрация: 09.08.2007
Сообщений: 23
1

Ошибка Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record

14.11.2007, 14:42. Показов 3720. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Большое спасибо всем кто хоть что-нибудь подскажет или наведёт на нужную мысль!!
Короче проблема такая.
Delphi
1
2
3
4
  ADOQuery1.Close;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Add('Select * from MPD');
  ADOQuery1.Open;
Здесь пока идёт всё нормально. Хочу заметить что набор MPD абсолютно пустой и нет ни одной записи. ADOQuery1 соединяется с базой через ADOConnection1. База под SQL Server 2000.
В результате в DBGrid1 появляется как и положено пустой рекордсет.
И курсор в этом DBGrid1 устанавливается на первую пустую запись.
Далее
Delphi
1
2
3
4
5
  ADOQuery1.Close;
  ADOQuery1.SQL.Clear;
  Edit1.Text:='Insert MPD (MPD_Id,MPD_Name,MPD_GostNum) Values(1,'Shoes','125/45')'
  ADOQuery1.SQL.Add(Edit1.Text); 
  ADOQuery1.Execute;
Тут мне выдаётся Project ... raised exception class EOleException with message 'Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record'.
В DBGrid всё пропадает и потом при повторном выполнении этот запрос выполняется на ура.
Я пробовал и BOF и EOF менять программно не помогает.
Получается что через ADOQuery нельзя вставить запись в пустую таблицу, если эта таблица активизирована в DBGrid, т.е. курсор в DBGrid стоит на пустой записи.
Кстати, такая же фигня происходит, если курсор в DBGrid стоит на последней или первой записи в непустом рекордсете.
Помогите!! Мне кажется, что решение этого вопроса совсем несложное.
Только не могу допереть как!?? первый раз с ADO работаю.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.11.2007, 14:42
Ответы с готовыми решениями:

Голосовалка, ошибка: Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.
Вопросы по голосовалке с ответами, из базы вытаскиваются, при нажатии на ГОЛОСОВАТЬ результаты...

ADODB.Field error '80020009' Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.
Выдается следующая ошибка : === ADODB.Field error '80020009' Either BOF or EOF is True, or...

Ошибка ADODB.Field error '800a0bcd' Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current recor
Имею скрипт Set dbo = Server.CreateObject('ADODB.Connection') dbo.Open 'PEN1' Title =...

ADODB.Field error '800a0bcd' Either BOF or EOF is True, or the current record has been deleted; the operation requested by the application requires
вываливается ошибка: ADODB.Field error '800a0bcd' Either BOF or EOF is True, or the current...

1
0 / 0 / 0
Регистрация: 16.10.2007
Сообщений: 21
14.11.2007, 15:12 2
Скачай с www.borland.com аргрейд MDAC 2.6
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.11.2007, 15:12
Помогаю со студенческими работами здесь

Как подавить вывод на экран предупреждения - Either BOF or EOF is True, or the current record has been deleted... ?
Как подавить вывод на экран предупреждения - Either BOF or EOF is True, or the current record has...

Current Record, Нужно в запросе или в форме прописать номер строчки
Всем хорошего настроения. Помогите разобраться с функцией CurrentRecord. Нужно в запросе или...

Фильтрация в dBase выдает "No current record."
Доброго времени суток, есть программа, состоящая из 3 страниц PageControl (обработка, результат...

Drawing operation was attempted when there was no current window. Что за ошибка?
Пытаюсь запустить програмку из конспекта, который дали для изучения материала, а она не хочет...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru