Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ADO, Access и пустые таблицы [D5, Access]


TechnoDreamer ©   (2004-12-19 06:06:00) 

База данных на Access, использую через ADO (TAdoTable и TDataSource), бывают ситуации когда в некоторых таблицах базы не остается не одной записи (юзер удаляет). При этом появляется ошибка: "BOF или EOF имеет значение True, лиюо текущая запись удалена. Для выполняемой операции требуется текущая запись."
Как это обойти?


Anatoly Podgoretsky   (2004-12-20 11:55:00) [1]

TechnoDreamer ©   (20.12.04 11:42) [9]
Это по твоей вине, не своевременно ставишь апдейты.


sniknik   (2004-12-20 11:54:00) [2]

> я и не думал что это глюк delphi
а я бы и сейчас это глюком не назвал...
прикинь, ты чтото пишеш, какуюто прогу опираясь на предоставленный протокол от связаного с твоим ПО другой фирмы. написал, отдал клиентам, и тут начиная с какойто версии протокол поменялся...
ты естественно исправил, и новая прога с новым работает, но старая нового протокола естественно не понимает...
кто виноват? ты? другая фирма? или юзер который не обновил ПО?
(смена протокола скорее всего не блаж а обусловлена какимито причинами, уходом от еще большего глюка например)


TechnoDreamer   (2004-12-20 11:42:00) [3]

Удалено модератором
Примечание: дубль


TechnoDreamer   (2004-12-20 11:42:00) [4]

Ого тут уже бурное обсуждение, огромное спасибо sniknik, я и не думал что это глюк delphi. Скачал патч, всё ок стало.

З.Ы. Остальным, глюк появляется не когда я что то удалить пытаюсь, а при закрытии проги, если в ней есть таблицы с нулевым количеством записей. После установки патча и перекомпиляции проги всё стало на свои места.
:-)) Наконец то хоть один глюк не по моей вине :-))


SergP   (2004-12-19 23:22:00) [5]


>  [6] Shamansky   (19.12.04 22:08)
> Если есть всего одна запись и ее удаляешь выдает ту же ошибку,
> но запись удаляется, и что тогда?


Хм... Такого я с ADO + access не наблюдал. Вернее были глюки с D5, но после того как я перешел на D6, теперь такого нет. Не знаю как там с D7.


Shamansky   (2004-12-19 22:08:00) [6]

Если есть всего одна запись и ее удаляешь выдает ту же ошибку, но запись удаляется, и что тогда?


SergP   (2004-12-19 22:04:00) [7]

Первое что на ум взбрело:

Перед тем как пытаться удалить запись проверь или RecordCount>0, если RecordCount>0 то удаляй, если нет, то и не пытайся


Shamansky   (2004-12-19 21:32:00) [8]

Дык оно жалуется на то, что ему не на что поставить указатель, записей нету.
А если хочешь проверить, создай таблицу с одной записью и попробуй удалить с этой таблицы 2 строки, получишь эту ошибку


sniknik   (2004-12-19 19:43:00) [9]

> Этот глюк появляется и в 7 Делфе
ты первый на это жалуешся, на седьмой уже ~ полтора/два года и постоянно с ADO работаю, ни разу подобного не замечал...
и никто кого знаю тоже. (почемуто все с проблемами ко мне идут, было бы пришли)

скорее всего ты путаеш с какойто другой ошибкой (в своей проге к примеру, которую приписываеш этому глюку в компаненте)


Shamansky   (2004-12-19 18:43:00) [10]

Этот глюк появляется и в 7 Делфе, попробуй запускать прогу не из Делфи, сообщения об ошибке быть не должно


sniknik   (2004-12-19 12:31:00) [11]

ставь адейты на ADO в дельфи или меняй ее на более новую... (и ставь апдейты ;о), это глюк общеизвестный для D5, проявляется при доступе из старых компонент к более новым версиям ADO в системе.
(поставить в систему ADO 2.4 тоже можно, решит проблему, но это глупо ;о)))

вообше раньше этот вопрос часто "всплывал", даже являлся уже практически офтопиком... а этот первый за достаточно долгое время... чтобы то значило? может D5 уже старый и мало кто его юзает уже?


Наверх

Титульная страница Поиск, карта сайта Написать письмо