Вниз
Скачать: CL | DM;

Проблема с индексом   Найти похожие ветки 

 
scorp123 ©   (2005-11-08 19:08) [0]

В таблице создан вторичный индекс. После создания таблицы всё нормално. По вторичному индексу таблица фильтруется или ищется нужная запись. Но проходит время и при запуске приложения выдаёт сообщение index is out of date (если я правильно перевёл - индекс устаревший).
Заранее благодарен за помощь.


 
Val ©   (2005-11-08 19:27) [1]

время от времени индексы нужно перестраивать. то ли пересозданием, то ли специальной командой sql.


 
Desdechado ©   (2005-11-08 22:07) [2]

просто не забывай открывать индекс, когда пишешь в БД, т.к. по умолчанию (если правильно помню) они не открываются, т.е. при изменениях в БД они эти изменения не подхватывают


 
Виталий Панасенко   (2005-11-09 09:00) [3]

А первичный ключ есть ? Если нету, то все вторичные - не перестраиваемые.. Т.е. пока ты ничего не изменил в данных по индексному полю, все тип-топ.. Но если поменял, то индекс автоматически не перестраивается и имеем то, что имеем. При наличии ПК индексы перестраиваемые (хотя можно и забодяжить "не")


 
scorp123 ©   (2005-11-10 08:04) [4]


> время от времени индексы нужно перестраивать. то ли пересозданием,
>  то ли специальной командой sql.

На сколько я знаю, в Paradox если таблица не пустая, из DatabaseDesktop
реструктуризацию таблицы провести сложно, если вообще не не возможно.
На счёт специальной команды не знаю. Если есть возможность подскажи что за команда. Буду очень блогадарен.

> просто не забывай открывать индекс, когда пишешь в БД, т.
> к. по умолчанию (если правильно помню) они не открываются,
>  т.е. при изменениях в БД они эти изменения не подхватывают

Если ты имееш в виду свойство IndexName то в этом свойстве вторичный индекс записан постоянно и не меняется.

> А первичный ключ есть ? Если нету, то все вторичные - не
> перестраиваемые.. Т.е. пока ты ничего не изменил в данных
> по индексному полю, все тип-топ.. Но если поменял, то индекс
> автоматически не перестраивается и имеем то, что имеем.
> При наличии ПК индексы перестраиваемые (хотя можно и забодяжить
> "не")

Первичный ключ есть.

Кажется причину я понял. Дело в том, что первое поле в таблице имеет тип Date. Для этого поля на этапе разработки был создан вторичный ключ DateIndex. Именно по поводу этого ключа сообшение и выскакивало.
Для тэстирования СУБД я ввёл ряд записей. В поле Date одно число следует за другим. Тоесть первоя запись 8.11.2005, вторая запись 9.11.2005 и т.д.
Собщение стало выбивать тогода когда записи перестали быть последовательными. Тоесть идёт 8.11.2005 потом 9.11.2005 затем 1.1.2006(не в попад) и далбше опять последовательно. Когда путаницу в записях устранил всё стало на свои места. Поле Date к стати уникальное. Все записи должны отличатся друг от друга.

Огромное спасибо за  помощ.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.031 c
14-1131133118
lookin
2005-11-04 22:38
2005.11.27
Оценить стоимость трафика при игре онлайн (в интернет)


6-1122966884
ZAV
2005-08-02 11:14
2005.11.27
Как при помощи IDFTP узнать дату изменения файла


3-1128543771
Слоник
2005-10-06 00:22
2005.11.27
Delphi 8 - как использовать сторонний ODBC-драйвер


1-1130919416
Иванов__
2005-11-02 11:16
2005.11.27
Напомните пож. как запустить внеш. программу с параметром.


14-1131439663
Vanya95
2005-11-08 11:47
2005.11.27
Быстрый перенос настроек одной уч.записи в другую в Windows XP




   Наверх