Erstellen einer Datenbank und Hinzufügen von Tabellen in .NET Framework-Anwendungen mit Visual Studio

Anmerkung

Datasets und verwandte Klassen sind ältere .NET Framework-Technologien aus den frühen 2000er Jahren, mit denen Anwendungen mit Daten im Arbeitsspeicher arbeiten können, während die Anwendungen von der Datenbank getrennt werden. Die Technologien sind besonders nützlich für Anwendungen, mit denen Benutzer Daten ändern und die Änderungen wieder in der Datenbank speichern können. Obwohl Datasets sich als sehr erfolgreiche Technologie erwiesen haben, empfehlen wir, dass neue .NET-Anwendungen Entity Framework Coreverwenden. Entity Framework bietet eine natürlichere Möglichkeit, mit tabellarischen Daten als Objektmodelle zu arbeiten und verfügt über eine einfachere Programmierschnittstelle.

Sie können Visual Studio verwenden, um eine lokale Datenbankdatei in SQL Server Express LocalDB zu erstellen und zu aktualisieren. Sie können auch eine Datenbank erstellen, indem Sie Transact-SQL Anweisungen im SQL Server-Objekt-Explorer Toolfenster in Visual Studio ausführen. In diesem Thema erstellen Sie eine .mdf Datei und fügen Mithilfe des Tabellen-Designers Tabellen und Schlüssel hinzu.

Voraussetzungen

Um diese exemplarische Vorgehensweise abzuschließen, benötigen Sie die in Visual Studio installierten Workloads für die .NET-Desktopentwicklung und die Datenspeicherung und -verarbeitung. Um sie zu installieren, öffnen Sie Visual Studio Installer, und wählen Sie Ändern (oder Mehr>Ändern) neben der Version von Visual Studio aus, die Sie ändern möchten. Weitere Informationen finden Sie im Artikel Bearbeiten von Visual Studio-Workloads, -Komponenten und -Sprachpaketen.

Anmerkung

Die Verfahren in diesem Artikel gelten nur für .NET Framework-Windows Forms-Projekte, nicht für .NET Core Windows Forms-Projekte.

Erstellen eines Projekts und einer lokalen Datenbankdatei

  1. Erstellen Sie ein neues Windows Forms App (.NET Framework) Projekt, und nennen Sie es SampleDatabaseWalkthrough-.

  2. Wählen Sie auf der Menüleiste Projekt>Neues Element hinzufügenaus. Wenn ein kleines Dialogfeld mit einem Feld für einen Dateinamen angezeigt wird, wählen Sie Alle Vorlagen anzeigenaus.

  3. Scrollen Sie in der Liste der Elementvorlagen nach unten, und wählen Sie Dienstbasierte Datenbank aus.

    Hinzufügen eines neuen Elements > dienstbasierte Datenbank

    Hinzufügen eines neuen Elements > dienstbasierte Datenbank

  4. Benennen Sie die Datenbank SampleDatabase.mdf, und wählen Sie dann Hinzufügenaus.

Hinzufügen einer Datenquelle

  1. Wenn das Fenster Datenquellen nicht geöffnet ist, öffnen Sie es, indem Sie Umschalttaste+Alt+D drücken oder Ansicht>Andere Fenster>Datenquellen auf der Menüleiste auswählen.

  2. Wählen Sie im Fenster Datenquellen die Option Neue Datenquelle hinzufügenaus.

    Hinzufügen einer neuen Datenquelle in Visual Studio

    Hinzufügen einer neuen Datenquelle in Visual Studio

    Der Assistent zur Konfiguration von Datenquellen wird geöffnet.

  3. Wählen Sie auf der Seite Datenquellentyp auswählen die Option Datenbank aus, und klicken Sie dann auf Weiter.

  4. Wählen Sie auf der Seite Datenbankmodell auswählen die Option Weiter aus, um die Standardeinstellung (Dataset) zu übernehmen.

  5. Wählen Sie auf der Seite Datenverbindung auswählen die Datei SampleDatabase.mdf in der Dropdownliste aus, und klicken Sie dann auf Weiter.

  6. Klicken Sie auf der Seite Verbindungszeichenfolge in der Anwendungskonfigurationsdatei speichern auf Weiter.

  7. Auf der Seite "Datenbankobjekte auswählen" wird eine Meldung angezeigt, die besagt, dass die Datenbank keine Objekte enthält. Wählen Sie Fertig stellen aus.

Vorsicht

In einer echten Anwendung sollten Sie die Verbindungszeichenfolge sicher speichern, wie in Verbindungszeichenfolgen und Konfigurationsdateienbeschrieben. Verwenden Sie für optimale Sicherheit eine Authentifizierungsmethode, die nicht darauf basiert, ein Kennwort in der Verbindungszeichenfolge zu speichern, z. B. die Windows-Authentifizierung für eine lokale SQL Server-Datenbank. Siehe Speichern und Bearbeiten von Verbindungszeichenfolgen.

Eigenschaften der Datenverbindung anzeigen

Sie können einige der Eigenschaften der datei SampleDatabase.mdf anzeigen, indem Sie das Fenster Eigenschaften der Datenverbindung öffnen:

  • Klicken Sie auf Ansicht>SQL Server-Objekt-Explorer (alternativ STRG+\STRG+S drücken), um das Fenster SQL Server-Objekt-Explorer zu öffnen. Erweitern Sie (localdb)\MSSQLLocalDB>Datenbanken, und klicken Sie dann mit der rechten Maustaste auf SampleDatabase.mdf (möglicherweise als vollständiger Pfad aufgeführt), und wählen Sie Eigenschaftenaus.

  • Alternativ können Sie Ansicht>Server-Explorer auswählen, wenn dieses Fenster noch nicht geöffnet ist. Öffnen Sie das Eigenschaftenfenster, indem Sie den Knoten Datenverbindungen erweitern, mit der rechten Maustaste auf SampleDatabase.mdfklicken und dann Eigenschaftenauswählen.

    Tipp

    Wenn Sie den Knoten "Datenverbindungen" nicht erweitern können oder die SampleDatabase.mdf Verbindung nicht aufgeführt ist, wählen Sie in der Server-Explorer-Symbolleiste die Schaltfläche Mit Datenbank verbinden aus. Stellen Sie im Dialogfeld Verbindung hinzufügen sicher, dass die Microsoft SQL Server-Datenbankdatei unter der Datenquelleausgewählt ist, und navigieren Sie dann zur Datei SampleDatabase.mdf. Beenden Sie das Hinzufügen der Verbindung, indem Sie OKauswählen.

Um die Verbindungszeichenfolge anzuzeigen, können Sie die App.config Datei im Projektmappen-Explorer öffnen. Unter dem connectionStrings-Element sollte ein Eintrag angezeigt werden, der dem folgenden Code ähnelt:

    <connectionStrings>
        <add name="SampleDatabaseWalkthrough.Properties.Settings.SampleDatabaseConnectionString"
            connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\SampleDatabase.mdf;Integrated Security=True"
            providerName="System.Data.SqlClient" />
    </connectionStrings>

Erstellen von Tabellen und Schlüsseln mithilfe des Tabellen-Designers

In diesem Abschnitt erstellen Sie zwei Tabellen, einen Primärschlüssel in jeder Tabelle und einige Zeilen mit Beispieldaten. Sie erstellen auch einen Fremdschlüssel, um anzugeben, wie Datensätze in einer Tabelle Datensätzen in der anderen Tabelle entsprechen.

Erstellen der Tabelle "Customers"

  1. Erweitern Sie im Server-Explorer oder SQL Server-Objektkatalog den Knoten Datenverbindungen, und erweitern Sie dann den Knoten SampleDatabase.mdf.

  2. Klicken Sie mit der rechten Maustaste auf Tabellen, und wählen Sie Neue Tabelle hinzufügenaus.

    Der Tabellen-Designer wird geöffnet und zeigt ein Raster mit einer Standardzeile an, die eine einzelne Spalte in der Tabelle darstellt, die Sie erstellen. Durch Hinzufügen von Zeilen zum Raster fügen Sie Spalten in der Tabelle hinzu.

  3. Fügen Sie im Raster eine Zeile für jeden der folgenden Einträge hinzu:

    Spaltenname Datentyp Nullwerte zulassen
    CustomerID nchar(5) False (gelöscht)
    CompanyName nvarchar(50) Falsch (gelöscht)
    ContactName nvarchar (50) True (ausgewählt)
    Phone nvarchar (24) True (ausgewählt)
  4. Klicken Sie mit der rechten Maustaste auf die Zeile CustomerID, und wählen Sie dann Primärschlüssel festlegenaus.

  5. Klicken Sie mit der rechten Maustaste auf die Standardzeile (Id), und wählen Sie dann Löschenaus.

  6. Benennen Sie die Tabelle "Kunden", indem Sie die erste Zeile im Skriptbereich entsprechend dem folgenden Beispiel aktualisieren:

    CREATE TABLE [dbo].[Customers]
    
  7. Fügen Sie der Tabelle "Customers" eine Indexeinschränkung hinzu. Fügen Sie am Ende der Phone Zeile ein Komma hinzu, und fügen Sie dann das folgende Beispiel vor der schließenden Klammer hinzu:

    CONSTRAINT [PK_Customers] PRIMARY KEY ([CustomerID])
    

    Sie sollten etwa folgendes sehen:

    Tabellen-Designer mit Tabelle „Customers“ "Customers"-Tabelle

    Tabellen-Designer mit Tabelle „Customers“

  8. Wählen Sie in der oberen linken Ecke des Tabellen-Designers die Option Aktualisieren aus, oder drücken Sie UMSCHALT+ALT+U.

  9. Wählen Sie im Dialogfeld Vorschau-Datenbankupdates die Option Datenbank aktualisierenaus.

    Die Tabelle "Customers" wird in der lokalen Datenbankdatei erstellt.

Erstellen der Tabelle "Bestellungen"

  1. Fügen Sie eine weitere Tabelle hinzu, und fügen Sie dann eine Zeile für jeden Eintrag in der folgenden Tabelle hinzu:

    Spaltenname Datentyp NULL zulassen
    OrderID int False (gelöscht)
    CustomerID nchar(5) Falsch (gelöscht)
    OrderDate datetime True (ausgewählt)
    OrderQuantity int True (ausgewählt)
  2. Legen Sie OrderID als Primärschlüssel für fest und löschen Sie dann die Standardzeile.

  3. Benennen Sie die Tabelle "Bestellungen", indem Sie die erste Zeile im Skriptbereich entsprechend dem folgenden Beispiel aktualisieren:

    CREATE TABLE [dbo].[Orders]
    
  4. Fügen Sie der Tabelle "Customers" eine Indexeinschränkung hinzu. Fügen Sie am Ende der OrderQuantity Zeile ein Komma hinzu, und fügen Sie dann das folgende Beispiel vor der schließenden Klammer hinzu:

    CONSTRAINT [PK_Orders] PRIMARY KEY ([OrderId])
    
  5. Wählen Sie in der oberen linken Ecke des Tabellen-Designers die Option Aktualisieren aus, oder drücken Sie UMSCHALT+ALT+U.

  6. Wählen Sie im Dialogfeld Vorschau von Datenbankupdates die Option Datenbank aktualisieren aus.

    Die Tabelle „Orders“ wird in der lokalen Datenbankdatei erstellt. Wenn Sie den Tabellen Knoten im Server-Explorererweitern, werden die beiden Tabellen angezeigt:

    Im Server-Explorer erweiterter Knoten „Tables“

    Im Server-Explorer erweiterter Knoten „Tables“

    Wenn sie nicht angezeigt wird, klicken Sie auf die Symbolleisten-Schaltfläche Aktualisieren.

Erstellen eines Fremdschlüssels

  1. Klicken Sie im Kontextbereich auf der rechten Seite des Tabellen-Designer-Rasters für die Tabelle "Bestellungen" mit der rechten Maustaste auf Fremdschlüssel, und wählen Sie Neuen Fremdschlüssel hinzufügenaus.

    Hinzufügen eines Fremdschlüssels in Tabellen-Designer in Visual Studio

    Hinzufügen eines Fremdschlüssels in Tabellen-Designer in Visual Studio

  2. Ersetzen Sie im angezeigten Textfeld den Text ToTable durch Customers.

  3. Aktualisieren Sie im T-SQL-Bereich die letzte Zeile so, dass sie mit dem folgenden Beispiel übereinstimmt:

    CONSTRAINT [FK_Orders_Customers] FOREIGN KEY ([CustomerID]) REFERENCES [Customers]([CustomerID])
    
  4. Wählen Sie in der oberen linken Ecke des Tabellen-Designers die Option Aktualisieren aus (UMSCHALT+ALT+U).

  5. Wählen Sie im Dialogfeld Vorschau von Datenbankupdates die Option Datenbank aktualisieren aus.

    Der Fremdschlüssel wird erstellt.

Auffüllen der Tabellen mit Daten

  1. Erweitern Sie im Server-Explorer oder SQL Server-Objekt-Explorerden Knoten für die Beispieldatenbank.

  2. Öffnen Sie das Kontextmenü für den Knoten Tables, wählen Sie Aktualisieren aus, und erweitern Sie anschließend den Knoten Tables.

  3. Öffnen Sie das Kontextmenü für die Customers-Tabelle, und wählen Sie dann Tabellendaten anzeigen oder Daten anzeigen aus.

  4. Fügen Sie für einige Kunden die gewünschten Daten hinzu.

    Sie können beliebige fünf Zeichen als Kunden-IDs angeben, aber mindestens ein Zeichen auswählen, das Sie sich später in diesem Verfahren merken können.

  5. Öffnen Sie das Kontextmenü für die Orders-Tabelle, und wählen Sie dann Tabellendaten anzeigen oder Daten anzeigen aus.

  6. Fügen Sie Daten für einige Bestellungen hinzu. Während Sie jede Zeile eingeben, wird sie in der Datenbank gespeichert.

    Wichtig

    Stellen Sie sicher, dass alle Bestell-IDs und Bestellmengen ganze Zahlen sind und dass jede Kunden-ID mit einem Wert übereinstimmt, den Sie in der Spalte CustomerID der Tabelle "Kunden" angegeben haben.

Glückwunsch! Sie wissen nun, wie Sie Tabellen erstellen, mit einem Fremdschlüssel verknüpfen und Daten hinzufügen.