![]() |
Datenbank: Paradox • Version: 7 • Zugriff über: BDE
Datenbank Reorganisation???
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Leute,
ich soll ein kleines Tool schreiben, womit man eine Paradox 7 Tabelle Reorganisieren kann. Habt Ihr eine Idee was das ist und wie man das macht??? Ich habe mal einen kleine Bsp. Tabelle erstellt. MFG Christian18 |
Re: Datenbank Reorganisation???
|
Re: Datenbank Reorganisation???
Ich habe da was aus alter Zeit gefunden :-)
DaBa#s reinitialisieren Wenn sich mal wieder einer Ihrer Index umgedreht hat, ist es nötig, die zugrundeliegende Tabelle zu reindizieren. Dazu stellt das TTable-Objekt keinerlei Methodik zur Verfügung. Allerdings haben Sie ja Zugriff auf die BDE auf Systemebene (siehe Beitrag Blick hinter die Kulissen). Denn hier stehen Ihnen alle Routinen zur Verfügung, mit denen sich dBase- und Paradox-Tabellen bearbeiten lassen. Dazu zählt auch die Funktion DbiRegenIndexes. Mit ein paar Kniffen erhalten Sie daraus eine praxistaugliche Funktion, mit der Sie beliebige Tabellen vom Typ TTable reindizieren:
Delphi-Quellcode:
Damit die Routine auch ordnungsgemäß kompiliert, müssen Sie verschiedene Bibliotheken in der Uses-Klausel nennen.
Function DBReIndex(tbl: TTable) : Boolean;
Var bOpen, bExclusive : Boolean; Begin bOpen := tbl.Active; bExclusive := tbl.Exclusive; Try Try If Not tbl.Exclusive Then Begin tbl.Close; tbl.Exclusive := True; End; if Not tbl.Active Then tbl.Open; Check(DbiRegenIndexes(Tbl.Handle)); Finally Result := True; End; Except On E: Exception Do Begin ShowMessage(E.Message); Result := False; End; End; If bExclusive And bOpen Then {alles OK => nichts tun} Else Begin tbl.Close; tbl.Exclusive := bExclusive; tbl.Active := bOpen; End; End; Dazu gehören natürlich die beiden Datenbank-Units DBTables und DB, aber genauso die beiden Interface-Deklarationsdateien DBIProcs und DBITypes. [edit=r_kerber]Delphi-Tags eingefügt. Das nächste Mal bitte selbst machen. Mfg, r_kerber[/edit] |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:28 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz