Datenbankprogrammierung

Kontaktverwaltung mit Visual C++

Im letzten Beitrag haben Sie eine SQL-Datenbank geschaffen, um Kontakte darin aufzunehmen. Jetzt gehen Sie daran, Ihren Anwendern die gewünschte Funktionalität über die Benutzeroberfläche einer Windows Forms-Anwendung zur Verfügung zu stellen.

  1. Kontaktverwaltung mit Visual C++
  2. Objektvariablen
  3. SelectedIndex
  4. ExecuteReader()
Datenbankprogrammierung mit Visual C++

© Archiv

Datenbankprogrammierung mit Visual C++

Der Anfang ist Routine. Sie legen im Visual Studio oder in Visual C++ Express ein neues Projekt mit der Vorlage Windows Forms-Anwendung an. Für das Beispiel benötigen Sie acht Button-, vier TextBox-, drei Label-Steuerelemente und eine ListBox. Ordnen Sie die Steuerelemente in etwa so an, wie Sie es im Bild Steuerelemete sehen. Das ListBox-Steuerelement erhält die Begriffe Vorname, Nachname und E-Mail. Nach diesen Kriterien sucht der Benutzer später in der Datenbank seine Kontakte.

Bildergalerie

Datenbankprogrammierung mit Visual C++
Galerie

Verbindung zur SQL-Datenbank

Datenbankprogrammierung mit Visual C++

© Archiv

Steuerelemente: Dies Formular im Windows Forms-Designer interagiert mit der Datenbank.

Der letzte Beitrag hat es bereits angekündigt: Sie müssen als Visual C++-Programmierer die Funktionalität selber einrichten, die es den Benutzern Ihrer Anwendung erlaubt, mit der Datenbank zu interagieren. Zunächst stellen Sie mit dem Programmcode eine Verbindung zur Datenbank her.

Für den Zugriff auf Datenbanken ist im .NET Framework der Namespace mit seinen Unternamespaces zuständig. Die Gesamtheit aller enthaltenen Klassen bezeichnet man als ADO.NET.

Speziell für den Zugriff auf SQL-Datenbanken gibt es den Namespace System::Data::SqlClient. Binden Sie diesen am besten im Code der Formulardatei ein, um die Klassen ohne qualifizierten Zugriff verwenden zu können (using namespace System::Data::SqlClient;). Die Verbindung zur Datenbank stellen Sie mit einem Objekt der Klasse SqlConnection her. Dem Konstruktor übergeben Sie die Verbindungszeichenfolge der Datenbank. Danach rufen Sie die Open()-Methode auf.

connection = gcnew SqlConnection
("<Verbindungszeichenfolge>");
connection->Open();
Datenbankprogrammierung mit Visual C++

© Archiv

MSDN-Hilfe: Die ADO.NET-Klassen bilden die Datenbankschnittstelle des .NET Frameworks.

Der Ausdruck dient als Platzhalter, der unter anderem vom Speicherort der Datenbank abhängig ist und stets mit Data Source= beginnt. Am einfachsten erhalten Sie die korrekte Verbindungszeichenfolge, indem Sie die entsprechende Zeile im Eigenschaftenfenster kopieren, nachdem Sie zuvor den Datenbankeintrag im Datenbank-Explorer selektiert haben.

Hinterher müssen Sie noch die enthaltenen doppelten Anführungszeichen entfernen und jeden Backslash verdoppeln - und natürlich die äußeren "" für den String- Datentyp hinzufügen. Die Verbindungszeichenfolge enthält alle notwendigen Informationen für das SqlConnection-Objekt, um sich mit der Datenbank zu verbinden.

Es macht Sinn, die beiden Anweisungen in der Methode für das Load-Ereignis des Formulars zu platzieren (Form1_Load()). Dieses Ereignis tritt ein, sowie das Anwendungsfenster geladen wird. Nach einer Sitzung sollten Sie die Datenbankverbindung mit der Close()-Methode wieder schließen. Der passende Zeitpunkt ist das FormClosed-Ereignis.

if (connection != nullptr)
connection->Close();

SQL-Befehle im C++-Code

Zuerst zur Kontakt-Klasse: Um die Kontakt- Datenbank einfacher zu programmieren und den Code übersichtlicher zu gestalten, definieren Sie im Projekt eine Kontakt-Klasse mit Membern für Vorname, Nachname und E-Mail-Adresse. In der gleichen Ereignismethode Form1_Load(), in der Sie gerade die Verbindung zur Datenbank hergestellt haben, lesen Sie jetzt alle bereits in der Datenbank vorhandenen Datensätze in eine generische Liste des Typs ^Kontakt ein.

command = connection->CreateCommand();
command->CommandText =
"SELECT * FROM Kontakte";
lesen = command->ExecuteReader();
while (lesen->Read())
{ meineKontakte->Add(gcnew Kontakt
(lesen-> GetString(0),
lesen->GetString(1),
lesen->GetString(2)));
}
lesen->Close();

Mehr zum Thema

HTML 5
Webgestaltung

Google Web Designer ist spezialisiert auf HTML5. Ein Vorteil dieses Standards ist das einfache Einbinden von Videos mit dem Element video. Wir zeigen…
Wir verraten, wie Sie Fritzboxen und andere Router vor Hackern schützen.
Fritzbox, Asus, Belkin und Co.

Fritzbox, Asus, Belkin oder DLink - die Liste der geknackten Router ist lang. Hacker stahlen Passwörter oder NAS-Daten. So machen Sie Ihren Router…
Wir führen Sie zur eigenen Windows-App - unserem PC-Magazin-RSS-Feed.
C# und XAML

Wir zeigen, wie Sie Windows 8.1 Apps selbst programmieren können. Lernen Sie das App erstellen an Hand unseres Beispiels: dem RSS-Feed von PC…
Windows Tipps & Tricks: Benutzerrechte unter Windows 8.1
Programme richtig installieren

Wir zeigen Ihnen, wie Sie sich unter Windows 8.1 alle Benutzerrechte verschaffen und Programme richtig installieren.
Windows 8: Starbildschirm
Microsoft Project Siena

Erstellen Sie sich selbst eine App für Windows 8, die auf alle Funktionen Ihres Tablets zugreifen kann, inklusive Kamera, Mikrofon und Lautsprecher.…