Форум: "Базы";
Текущий архив: 2003.04.24;
Скачать: [xml.tar.bz2];
ВнизСортировка в DBGrid Найти похожие ветки
← →
KPY (2003-04-07 08:27) [0]Подскажите пожалуйста как отсортировать данные в DBGrid по определенному полю которое не является первичным и соответственно содержит неуникальные данные.Таблица парадокс.
← →
Dim!S (2003-04-07 08:49) [1]построй по нему индекс
← →
KPY (2003-04-07 08:54) [2]тут я примерно в курсе. Динамически создавать индекс или можно как нибудь статически. Database Desktop не дает делать индекс по этому полю. Если его ставишь вторым то все-равно сортируется по первичному ключу
← →
Levan Varshanidze (2003-04-07 09:28) [3]a dannie v dbgrid otkuda: iz ttable ili iz tquery?
esli iz tquery, to vremenno zakroi tquery, modificirui tekst query (uberi starii ORDER BY i vstav novii ORDER BY) i otkroi zanovo
u menia rabotaet: po ctrl+tab sortiruetsia po stolbcu, po shift+ctrl+tab sortiruetsia po tomu je stolbcu po ubbivaniu):
var
fieldname:string,
query:tquery;
begin
IF ((SHIFT=[SSCTRL]) OR (SHIFT=[SSSHIFT,SSCTRL]) ) AND (KEY=VK_TAB) THEN
begin
FIELDNAME:=tdbgrid(sender).SelectedField.FieldName;
QUERY:=TQUERY(tdbgrid(sender).DataSource.dataset);
QUERY.CLOSE();
IF QUERY.SQL.Count>1 THEN QUERY.SQL.Delete; //"order by" v sttroke 1 (posle nulevoi )
IF SHIFT=[SSCTRL]
THEN QUERY.SQL.ADD(" ORDER BY "+FIELDNAME)
ELSE QUERY.SQL.ADD(" ORDER BY "+FIELDNAME+" DESC");
QUERY.OPEN();
end;
end;
nu, primerno tak!
← →
Levan Varshanidze (2003-04-07 09:35) [4]sorry,
doljen bit:
query.sql.delete(1);(udalit stroku 1)
← →
ЮЮ (2003-04-07 09:41) [5]>Database Desktop не дает делать индекс по этому полю
Всем даёт, а тебе нет :-)
См. Table Properties -> Secondary Indexes -> Define
← →
sunrider (2003-04-07 15:57) [6]Какое поле . Я имею ввиду тип Data, Lookup или что то другое?
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.04.24;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c