Einzelnen Beitrag anzeigen

Benutzerbild von eddy
eddy

Registriert seit: 4. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#13

Re: Sortierung der daten in datenbank

  Alt 7. Jan 2004, 00:33
Hallo Fengi,

Index auf Datum legen, also Tabelle nicht sortieren sondern nur indizieren (geht schneller):

Code:
procedure TFTermin.Indexneuaufbauen1Click(Sender: TObject);
begin
  Tab1.Close;
  Tab1.Exclusive := true;
  Tab1.Open;
  Tab1.IndexDefs.Clear;
  Tab1.IndexDefs.Update;
  Tab1.AddIndex('','ID', [ixPrimary]); // ID vom Typ ftAutoInc evtl. Deine Terminnummer
  Tab1.IndexDefs.Update;
  Tab1.AddIndex('Datum', 'Datum;Zeit', [ixCaseInsensitive]); // Datum; Uhrzeit
  Tab1.IndexDefs.Update;
  Tab1.AddIndex('Such', 'Such', [ixCaseInsensitive]); // Beschreibung
  Tab1.IndexDefs.Update;
  Tab1.Close;
  Tab1.Exclusive := false;
  Tab1.Open;
end;
Du mußt natürlich Deine Feldbezeichner verwenden. Falls Du kein Feld ID für den PrimärIndex hast, ergänze Deine DB (ID muß 1. Feld in der Liste sein) oder denk' Dir ein anderes Feld als Primärindex aus.

Anwendung:

Code:

const
  ixDatum = 'Datum';

procedure TFTermin.FormActivate(Sender: TObject);
begin
  ....
  UP_DBActiv(Tab1,SessN,DataPath,fnTermin); // Termin-DB öffnen
  try
    Tab1.IndexName := ixDatum;
  except
    Indexneuaufbauen1.Click;
    Tab1.IndexName := ixDatum;
  end;
  ....
mfg
eddy
  Mit Zitat antworten Zitat