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

Вниз

ClientDataSet & Index   Найти похожие ветки 

 
Sectey ©   (2003-04-01 10:56) [0]

Пытаусь удалить индекс у ClientDataSet объект индекса удаляется а вот индексация остается. Почему?
Пример:
// создаю индекс
ClientDataset.AddIndex("Cur","MainId",[ixCaseInsensitive],"");
// устанавливаю индекс
ClientDataSet.IndexName := "Cur";

...

// сбрасываю индекс
ClientDataSet.IndexName := "";
// удаляю индекс
ClientDataSet.IndexDefs.Delete(ClientDataSet.IndexDefs.IndexOf("Cur"));
// И ВОТ САМОЕ ИНТЕРЕСНОЕ
ClientDataSet.IndexName := "Cur";
// Мы опять устанавливаем индексацию по индексу который удален
// И действительно индексация устанавливается ПОЧЕМУ?

КАК МОЖНО УДАЛИТЬ ИНДЕКС ВМЕСТЕ С САМОЙ ИНДЕКСАЦИЕЙ?


 
Соловьев ©   (2003-04-01 10:58) [1]

там индекс и создавать не надо.
ClientDataSet.IndexName := "Cur";
автоматически это делает. Выбери другое поле - оно тоже будет отсортировано...


 
Sectey ©   (2003-04-01 11:11) [2]

>Соловьев ©

>там индекс и создавать не надо.
Что значит не надо? Индекс создается но создается не как отдельный файл.


 
Соловьев ©   (2003-04-01 11:17) [3]


> Выбери другое поле - оно тоже будет отсортировано...



 
Romkin ©   (2003-04-01 11:21) [4]

Не путай человека - ты говоришь о IndexFieldNames, а это немного другое
Вопрос: а зачем тебе удалять индекс у TClientDataSet ?
Если ты удалил индекс из Defs, это значит, ты удалил определение, но не индекс


 
Sectey ©   (2003-04-01 11:22) [5]

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


 
Sectey ©   (2003-04-01 11:24) [6]

>Romkin ©

Вот и я про тоже удалю определение, а КАК МНЕ УДАЛИТЬ САМ ИНДЕКС?


 
Romkin ©   (2003-04-01 12:54) [7]

Зачем тебе маятся с индексом и его удалением? Во-первых, можно создать сколько хочешь индексов, во-вторых, просто запиши в IndexFieldNames через ; имена полей без пробелов - и все будет отсортировано по ним


 
les ©   (2003-04-02 00:46) [8]

> Зачем тебе маятся с индексом и его удалением?
Тоже интересно. Зачем?

> во-вторых, просто запиши в IndexFieldNames через ; имена
> полей

Ето у нас будет временний индекс, т.е. каждий раз при присвоениии полей он будет строиться по новому. А если чеерз IndexName то постоянний, т.е. один раз построили и потом переключаемся. Хотя если таблиця небольшая... Ну вот здесь написано:
http://bdn.borland.com/article/0,1410,29056,00.html

To Romkin - а у тебя откуда такая фенька на Анкете (©) а?



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

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

Наверх




Память: 0.49 MB
Время: 0.018 c
4-54946
Long
2003-02-17 18:15
2003.04.17
Как с помощью WinAPI создать окно с кнопкой


14-54891
NightCold
2003-04-02 13:23
2003.04.17
Listbox & edit1


1-54602
ДЮША
2003-04-07 17:26
2003.04.17
сворачивается в системный трей


7-54929
Anar
2003-02-19 23:46
2003.04.17
Звуковая карта


1-54664
Konstantionov
2003-04-03 22:03
2003.04.17
Работа с динамическими массивами