Eine dbExpress-Datenbankanwendung mit VCL-Formularen erstellen
Nach oben zu So erstellen Sie Windows-VCL-Anwendungen
Die folgende Anleitung beschreibt, wie eine dbExpress-Datenbankanwendung erstellt wird.
Das Erstellen einer dbExpress-Datenbankanwendung mit VCL-Formularen umfasst die folgenden grundlegenden Schritte:
- Einrichten der Datenbankverbindung.
- Einrichten der unidirektionalen Datenmenge.
- Einrichten des Datenproviders, der Client-Datenmenge und der Datenquelle.
- Verbinden einer DataGrid-Komponente mit den Verbindungskomponenten.
- Ausführen der Anwendung.
So fügen Sie eine dbExpress-Verbindungskomponente hinzu:
- Wählen Sie entweder Datei > Neu > VCL-Formularanwendung - Delphi oder Datei > Neu > VCL-Formularanwendung - C++Builder .
- Ziehen Sie aus der Seite dbExpress der Tool-Palette eine TSQLConnection-Komponente auf das Formular.
- Klicken Sie im Formular auf die TSQLConnection-Komponente, und setzen Sie im Objektinspektor deren Eigenschaft ConnectionName auf IBConnection. Diese Einstellung bewirkt automatisch Folgendes:
- Die Eigenschaft Driver wird auf INTERBASE gesetzt.
- Ein Benutzername (UserName = sysdba) und ein Passwort (PassWord = masterkey) wird zugewiesen, um einen sicheren Zugriff auf die Datenbank zu gewährleisten.
- Sie müssen den Pfad zu Ihrer InterBase-Datenbankdatei (mit der Erweiterung .gdb) im Feld Database angeben.
Hinweis: InterBase 2020, das Bestandteil der RAD Studio-Produktinstallation ist, führt eine neue, starke Verschlüsselung für Benutzerpasswörter ein. Wegen dieser Änderung könnte bei Verwendung von RAD Studio Athens mit einer älteren Version von InterBase die folgende Fehlermeldung angezeigt werden: "Unrecognized database parameter block" (Nicht erkannter Datenbankparameterblock).
Aktualisieren Sie zur Lösung dieses Problems Ihren InterBase-Client mit dem Client aus InterBase 2020, weil InterBase 2020 standardmäßig eine neue admin.ib-Datei (Datenbank zur Benutzerautorisierung) mit starker Benutzerpasswortverschlüsselung installiert. Sie können stattdessen auch die Datei admin.ib durch eine andere aus einer älteren Version von InterBase ersetzen (der InterBase-Server muss dazu angehalten werden). Falls andere Probleme mit IBConnection auftreten, siehe den Abschnitt Migration Issues for InterBase im Readme zu InterBase. Weitere Informationen finden Sie auch auf der Seite InterBase.
Aktualisieren Sie zur Lösung dieses Problems Ihren InterBase-Client mit dem Client aus InterBase 2020, weil InterBase 2020 standardmäßig eine neue admin.ib-Datei (Datenbank zur Benutzerautorisierung) mit starker Benutzerpasswortverschlüsselung installiert. Sie können stattdessen auch die Datei admin.ib durch eine andere aus einer älteren Version von InterBase ersetzen (der InterBase-Server muss dazu angehalten werden). Falls andere Probleme mit IBConnection auftreten, siehe den Abschnitt Migration Issues for InterBase im Readme zu InterBase. Weitere Informationen finden Sie auch auf der Seite InterBase.
So richten Sie die unidirektionale Datenmenge ein:
- Ziehen Sie aus der Seite dbExpress der Tool-Palette eine TSQLDataSet-Komponente auf das Formular.
- Öffnen Sie im Objektinspektor die Dropdown-Liste der Eigenschaft SQLConnection, und setzen Sie sie auf den Namen Ihrer TSQLConnection-Komponente.
- Weisen Sie der Eigenschaft CommandText eine SQL-Anweisung zu, beispielsweise Select * from Table_Name. Sie werden aufgefordert, sich anzumelden. Verwenden Sie das Passwort masterkey. Sie können im Objektinspektor als SQL-Anweisung entweder eine Select-Anweisung eingeben oder auf die Ellipsen-Schaltfläche rechts neben CommandText klicken und die Abfrageanweisung im Anweisungstext-Editor eingeben.
Tipp: Hilfe zum Anweisungstext-Editor erhalten Sie, wenn Sie auf die Schaltfläche Hilfe klicken.
- Setzen Sie im Objektinspektor die Eigenschaft Active auf True, um die Datenmenge zu öffnen.
So fügen Sie den Provider hinzu:
- Ziehen Sie aus der Seite Datenzugriff der Tool-Palette eine TDataSetProvider-Komponente auf das Formular.
- Öffnen Sie im Objektinspektor die Dropdown-Liste der Eigenschaft DataSet, und setzen Sie sie auf den Namen Ihrer TSQLConnection-Komponente.
So fügen Sie eine Client-Datenmenge hinzu:
- Ziehen Sie aus der Seite Datenzugriff der Tool-Palette eine TClientDataSet-Komponente auf das Formular.
- Öffnen Sie im Objektinspektor die Dropdown-Liste der Eigenschaft ProviderName, und setzen Sie sie auf den Namen Ihrer TDataSetProvider-Komponente.
- Setzen Sie die Eigenschaft Active auf True, damit der Anwendung Daten übergeben werden können. Eine Datenquelle stellt eine Verbindung mit einer Client-Datenmenge über datensensitive Steuerelemente her. Jedes datensensitive Steuerelement muss mit einer Datenquellenkomponente verknüpft sein, damit Daten zum Anzeigen und Bearbeiten zur Verfügung stehen. Ebenso müssen alle Datenmengen mit einer Datenquellenkomponente verknüpft sein, damit ihre Daten in datensensitiven Steuerelementen des Formulars angezeigt und bearbeitet werden können.
So fügen Sie die Datenquelle hinzu:
- Ziehen Sie aus der Seite Datenzugriff der Tool-Palette eine TDataSource-Komponente auf das Formular.
- Öffnen Sie im Objektinspektor die Dropdown-Liste der Eigenschaft DataSet, und setzen Sie sie auf den Namen Ihrer TClientDataSet-Komponente.
So verbinden Sie ein Datengitter mit der Datenmenge:
- Ziehen Sie aus der Seite Datensteuerung der Tool-Palette eine TDBGrid-Komponente auf das Formular.
- Öffnen Sie im Objektinspektor die Dropdown-Liste der Eigenschaft DataSource, und setzen Sie sie auf den Namen Ihrer TDataSource-Komponente.
- Wählen Sie Start > Start . Sie werden zur Eingabe eines Passworts aufgefordert. Geben Sie masterkey ein. Wenn Sie ein falsches oder kein Passwort eingeben, löst der Debugger eine Exception aus. Die Anwendung wird compiliert und zeigt ein VCL-Formular mit einem Datengitter an.
Das folgende Diagramm zeigt die Verbindungen zwischen den verschiedenen Komponenten: