Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.31;
Скачать: CL | DM;

Вниз

Переиндексация БД   Найти похожие ветки 

 
Sheng ©   (2003-07-11 09:14) [0]

Привет всем! Я мало работал с БД, а тут пришлось. Объясните, плз, для чего нужна переиндексация, когда в ней возникает необходимость и как это реализовать программно? Заранее Спасибо за ответы.


 
DenK_vrtz ©   (2003-07-11 09:29) [1]

Переиндексация нужна:
1. когда "сваливаются" старые индексы
2. когда необходимо добавить новый индекс
3. может еще когда... :-) (для тестирования например)

Как сделать программно:
1. при помощи методов компонентов (например,Table.AddIndex)
2. при помощи SQL запросов


 
sunwheel ©   (2003-07-11 09:30) [2]

Переиндексация нужна для востановления индеков у таблиц(ы). Необходимость в ней возникает когда индексы были испорчены, например, в результате сбоя электропитания. Программно индексы восстанавливать можно через dbiRegenIndex. Вот пример из справки:


Regenerate an index to ensure that it is up to date.

This example uses the following input:

fDbiRegenIndex(Table1, "ByCompany", "", 1);

The procedure is:

procedure fDbiRegenIndex(Tbl: TTable; IndexName, TagName: String; IndexNum: Word);

begin
Check(DbiRegenIndex(Tbl.DBHandle, nil, PChar(Tbl.TableName), nil,
PChar(IndexName), PChar(TagName), IndexNum));
end;


 
DenK_vrtz ©   (2003-07-11 09:36) [3]

Sheng © , я имелл ввиду (как сделать программно) - методом Удалить старый индекс и создать новый,
чтобы не было противоречий с sunwheel © (11.07.03 09:30)


 
Соловьев ©   (2003-07-11 11:00) [4]


> DenK_vrtz © (11.07.03 09:29)

еще нужно 4 пункт.
...
4. когда добавляется много записей - ускоряет загрузку удаление индекса, а потом создание по новой.




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

Текущий архив: 2003.07.31;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.02 c
14-100897
R@nger
2003-07-14 13:58
2003.07.31
UUE Decode


6-100856
Samvel
2003-05-22 14:15
2003.07.31
Socets


1-100798
Sectey
2003-07-14 10:18
2003.07.31
Классы и интерфейсы


1-100679
Opera
2003-07-18 10:48
2003.07.31
game.ini


8-100834
diablo
2003-03-31 20:03
2003.07.31
Рисование в корале