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

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

Ошибка при активизации TTable??? [D5, Paradox, ]


Николаев Констанитн ©   (2001-12-04 20:54:00) 

Уважаемые специалисты!

Что значит ошибка "Index is out of date"?

С уважением,
Константин.


kaif   (2001-12-05 22:13:00) [1]

Эта ошибка существует в D3,D4,D5. В D6 не проверял, но уверен и там она есть. Я пробовал писать даже на Borland Second Team по этому поводу, но никто меня слушать даже не захотел - отсылали на форумы. Хотя это чудовищный баг, по моему мнению. Ошибка генерится по следующему алгоритму:
1. Вставляете запись в таблицу Paradox, с нарушением уникального индекса. Неважно, первичного или вторичного. Возникает Key violation.
2. Делаете невинный SQL-запрос против этой таблицы. Любой, например,
SELECT * FROM <table>
3. Вставляете еще раз запись с нарушением уникального индекса. сообщение Key violation больше не появляется.
После переоткрытия таблицы будете гарантированно иметь "Index is out of date."
Кто не верит, могу выслать исходный код демонстрационной программы .
Из за этого мне пришлось выбирать между Paradox и Local SQL. Выбор был трудный. И я выбрал InterBase.
Главная подлость этой ошибки в том, что программист не пытается обычно создать более 1 key violation подряд. Этим обычно занимается пользователь. Поэтому ошибка плохо уловима и иногда вылезает через пару месяцев работы базы.


andey   (2001-12-05 21:33:00) [2]

на сколько я помню у меня эта ошибка возникала когда я создал таблицу, потом написал прогу а потом изменил название поля таблицы и при следующей загрузки связи компонентов были установлены на старое имя поля


Anatoly Podgoretsky   (2001-12-05 08:04:00) [3]

А первичный ключ?


Никто   (2001-12-05 03:48:00) [4]

Кстати весьма частая, к сожалению, для Парадокса.


Ю.Ю.   (2001-12-05 02:48:00) [5]

Ошибка в индексном файле. Нужно удалить и создать заново.


Anatoly Podgoretsky   (2001-12-05 01:02:00) [6]

Устарел


Наверх

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