Добавление нового индекса
Добавление нового индекса происходит в режиме исключительного доступа к ТБД (свойство Exclusive = True) и осуществляется методом procedure Addlndex(const Name, Fields: string; Options: TIndexOptions); где параметр Name определяет имя индекса, а параметр Fields - список индексных полей. В случае нескольких полей их имена должны разделяться точкой с запятой. Должны указываться только поля, объявленные в структуре ТБД. В противном случае будет возбуждена исключительная ситуация и создание индекса будет блокировано. Параметр Options является множеством, которое содержит значения, определяющие свойства индекса:
TIndexOptions = set of (ixPrimary, ixUnique, ixDescending,ixExpression, ixCaseInsensitive) ;
ixPrimary -
определяет первичный индекс;ixUnique -
определяет уникальный индекс;ixDescending -
определяет индекс, построенный по убыванию значений ключевых полей (по умолчанию строится индекс по возрастанию значений ключевых полей);ixCaseInsensitive -
определяет индекс, нечувствительный к высоте букв. Так, например, если для индекса установлен этот режим, значения "КАРТОФЕЛЬ", "Картофель" и "картофель" будут сочтены идентичными.Например,
определить новый индекс с именем WWW, построенный по полям 'NN; DatePrih', нечувствительный к высоте букв:Table1.Close;
Table1.Exclusive := True;
Table1.Open;
Table1.Addlndex('WWW, 'NN; DatePrih' , [ixCaseInsensitive]);
Table1.Close;
Table1.Exclusive := False;
Table1.Open;