Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];

Вниз

ADO, Access и пустые таблицы   Найти похожие ветки 

 
TechnoDreamer ©   (2004-12-19 06:06) [0]

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


 
sniknik ©   (2004-12-19 12:31) [1]

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

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


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

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


 
sniknik ©   (2004-12-19 19:43) [3]

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

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


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

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


 
SergP ©   (2004-12-19 22:04) [5]

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

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


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

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


 
SergP ©   (2004-12-19 23:22) [7]


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


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


 
TechnoDreamer ©   (2004-12-20 11:42) [8]

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


 
TechnoDreamer ©   (2004-12-20 11:42) [9]

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

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


 
sniknik ©   (2004-12-20 11:54) [10]

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


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

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



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.041 c
14-1104519390
Palladin
2004-12-31 21:56
2005.01.23
Я придумал 13тый месяц...


1-1105433220
Eyfel
2005-01-11 11:47
2005.01.23
LZExpand


14-1104714149
Xenon
2005-01-03 04:02
2005.01.23
Ну зацените плиз


1-1104853281
Sanich
2005-01-04 18:41
2005.01.23
Как в TDBGridEh в колонку вставить CkeckBox???


3-1103625571
galexis
2004-12-21 13:39
2005.01.23
Ошибка Out Of Memory





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский