1. Übersicht
Als schnelles Entwicklungstool unter Windows kann Delphi nicht nur allgemeine Windows-Anwendungen entwickeln, sondern verfügt auch über leistungsstarke Funktionen zur Entwicklung von Datenbankanwendungen. Delphi selbst bietet Unterstützung für mehrere Datenbanktreiber wie BDE, ODBC, ADO und InterBase, die den Anforderungen verschiedener Anwendungen für die Entwicklung von Datenbankprogrammen gerecht werden können.
Wenn Sie jedoch ein mit Delphi entwickeltes Datenbankprogramm veröffentlichen, müssen Sie neben der Installation der Anwendung auch gleichzeitig den Datenbanktreiber veröffentlichen. Dies scheint für einige eigenständige Anwendungen, die nur die Speicherung einzelner oder mehrerer einfacher Tabellendaten umfassen, etwas kopflastig zu sein. Darüber hinaus müssen einige Anwendungen selbst große Datenmengen speichern. Wenn die Ergebnisse selbst jedoch kurz und prägnant sein müssen, kann die herkömmliche Datenbankentwicklungsmethode mit Delphi diese Anforderungen nicht erfüllen.
Gibt es also eine Möglichkeit, den oben genannten Widerspruch zu lösen und eine „dünne“ eigenständige Datenbankanwendung zu entwickeln, die vom riesigen Datenbanktreiber getrennt werden kann? Delphi5 bietet ein TClientDataSet-Steuerelement im Midas-Kontrollfeld, das dieses Problem gut lösen kann.
2. Wichtige Punkte für die Verwendung von TClientDataSet
Das TClientDataSet-Steuerelement erbt von TDataSet und seine Datenspeicherdateiformaterweiterung ist .cds. Es handelt sich um ein Steuerelement, das auf der Datenspeicherung und -operation im Dateityp basiert. Dieses Steuerelement kapselt die Schnittstellen und Funktionen zum Betreiben und Verarbeiten von Daten und ist nicht auf die oben genannten Datenbanktreiber angewiesen. Es kann grundsätzlich die Anforderungen eigenständiger „dünner“ Datenbankanwendungen erfüllen.
1. Einführung in die grundlegenden Eigenschaften und Methoden von TClientDataSet
1). FieldDefs: Eigenschaften der Felddefinitionsliste
Entwickler können Felder bearbeiten, indem sie im Eigenschafteneditor auf die Schaltfläche zum Bearbeiten von Eigenschaften klicken oder indem sie mit der rechten Maustaste auf das Steuerelement klicken und im Popup-Menü das Menü „Feldeditor“ auswählen. Nach dem Festlegen dieser Eigenschaft entspricht dies tatsächlich dem Definieren der Struktur der Tabelle. Wenn Sie die Struktur und Daten einer vorhandenen Datentabelle laden möchten, können Sie mit der rechten Maustaste klicken und im Popup-Menü das Menü „Lokale Daten zuweisen“ auswählen. Wählen Sie im Dialogfeld den Namen des Datensatzsteuerelements aus, das mit der Datenbank im aktuellen Formular verbunden ist (das anzuwendende Datensatzsteuerelement muss im aktuellen Formular platziert und aktiviert sein).
Hinweise zur Verwendung:
Bei der benutzerdefinierten Feldnamentabelle kann das Steuerelement nach dem Bearbeiten der Eigenschaft immer noch nicht geöffnet werden. Sie müssen mit der rechten Maustaste auf das Steuerelement klicken und im Popup-Menü das Menü „Datensatz erstellen“ auswählen, damit das Steuerelement einen Datensatz basierend auf der oben bearbeiteten Feldliste erstellen kann, bevor dieser aktiviert, geöffnet und verwendet werden kann. Andernfalls tritt ein Fehler ähnlich „ClientDataSet1: Daten-PRavider oder Datenpaket fehlen“ auf (auch während der Laufzeit kann die Laufzeit die CreateDataSet-Methode des Steuerelements aufrufen, um Felder und Tabellen dynamisch zu definieren).
2). FileNameProperty
Beschreibung: Der Name der Datenspeicherdatei.
Da es sich bei diesem Steuerelement um ein dateibasiertes Datenoperationssteuerelement handelt, müssen Sie den Namen der Datendatei angeben, die bearbeitet wird (Standarderweiterungsname .cds), um das Steuerelement für die Datenbearbeitung zu öffnen und zu aktivieren.
Beispiel 1: Verwenden Sie diese Eigenschaft, um die angegebene CDS-Datei zu öffnen
var
Pfad: string;
beginnen
Path := ExtractFilePath(application.ExeName); //Den Pfad der ausführbaren Datei abrufen
CDataSet1.FileName := Pfad + 'test.cds';
CDataSet1.Open;
Ende;
3). CreateDataSet-Methode
Beschreibung: Diese Methode verwendet die Feldnamentabelle in FieldDefs als Struktur zum Erstellen eines Datensatzes, der häufig zum dynamischen Definieren von Tabellen verwendet wird.
Beispiel 2: Erstellen Sie dynamisch einen Datensatz mit zwei Feldern: Name und Alter.
//Feldnamentabelle erstellen
CDataSet.FieldDefs.Clear;
mit CDataSet.FieldDefs.AddFieldDef tun
beginnen
Name := 'Name';
Größe := 10;
Datentyp := ftString;
Ende;
mit CDataSet.FieldDefs.AddFieldDef tun
beginnen
Name := 'Alter';
Datentyp := ftInteger;
Ende;
//Datensatz dynamisch erstellen
CDataSet.CreateDataSet;
//Aktivieren und öffnen Sie den Datensatz
CDataSet.Open;
4). Offene Methode
Beschreibung: Öffnet und aktiviert die Datensatzsteuerung zur Datenbearbeitung.
a. Wenn das FileName-Attribut angegeben ist, kann das Steuerelement direkt mit der Open-Methode geöffnet und aktiviert werden, siehe Beispiel 1.
b. Wenn das FileName-Attribut nicht angegeben ist, können Sie die Methode in Beispiel 2 verwenden, um den Datensatz dynamisch zu erstellen und zu öffnen und dann die Daten zu bearbeiten.
5). LoadFromFile und SaveToFile
Beschreibung: Tabellenstrukturen und Daten aus Dateien laden und Daten in Dateien speichern. Diese Methode ähnelt den Funktionen „Neue Datei öffnen“ und „Speichern unter“ in Word.
Beispiel 3: Speichern Sie die Daten des Datensatzes in der angegebenen Datei
CDataSet.SaveToFile('c:/windows/desktop/test.cds');
6).First (zum Anfang), Prior (vorwärts), Next (rückwärts), Last (bis zum Ende), Edit (Bearbeiten), CanCel (Bearbeitung abbrechen), Post (Speichern), Insert (Datensatz einfügen), Append (Datensatz hinzufügen), Löschen (Löschen), Aktualisieren (Datenaktualisierung) und andere gängige Methoden für Datensätze
Hinweis: Wenn das FileName-Attribut angegeben ist, kann seine Post-Methode Daten in der angegebenen Datei speichern, ähnlich wie seine SaveToFile-Methode, wenn der Speicherdateiname nicht angegeben ist, speichert die Post-Methode die Daten nur im RAM. Andere Methoden entsprechen der allgemeinen Verwendung der Datensatzsteuerung und werden weggelassen.
7).Filter, Gefiltert: Filtereigenschaften
Beschreibung: Wird zum Filtern von Datensätzen mit bestimmten Bedingungen verwendet. Die Verwendung ist dieselbe wie bei allgemeinen Datensatzsteuerelementen, die weggelassen werden.
Beispiel 4: Datensätze mit männlichem Geschlecht im aktivierten und geöffneten Datensatz filtern
CDataSet.Close;
CDataSet.Filter := 'Gender=''' + 'Male' + '''';
CDataSet.Filtered := True;
CDataSet.Open;
2. Hinweise zur Anwendungsveröffentlichung mit dem TClientDataSet-Steuerelement:
Wie bereits erwähnt, benötigen Programme, die das TClientDataSet-Steuerelement verwenden, bei der Veröffentlichung keinen Datenbanktreiber, wodurch die Größe der Installationsdatei erheblich gespart wird. Vergessen Sie jedoch beim Veröffentlichen des Programms nicht, midas.dll (257 KB) zusammen mit der Anwendung (für den Betrieb erforderlich) im Windows-Systemverzeichnis zu veröffentlichen, da das Programm sonst immer noch nicht normal ausgeführt werden kann.
3. Fazit
Durch die Verwendung des TClientDataSet-Steuerelements in Delphi kann die Anwendung vollständig vom Datenbanktreiber getrennt werden und die einfachen und benutzerfreundlichen Eigenschaften des herkömmlichen Datensatzsteuerelements realisiert werden, wodurch eine technische Methode und Mittel zum Schreiben „dünner“ Daten bereitgestellt werden. Datenbankanwendungen.
Das obige Programm wurde unter Pwindows98 und Delphi5 getestet.