Zum Hauptinhalt springen

Wie man eine SQL-Abfrage in einer DataGridView in C# ausgibt. Beispiele und ausführliche Anleitung

Die Interaktion mit Datenbanken ist ein wesentlicher Bestandteil der Entwicklung von Softwareanwendungen. Einer der gängigsten Ansätze für die Arbeit mit Datenbanken ist die Verwendung der SQL-Sprache. Mit dieser Sprache können Sie verschiedene Datenvorgänge ausführen, z. B. Auswählen, Einfügen, Aktualisieren und Löschen. Es besteht jedoch häufig die Notwendigkeit, die Ergebnisse auf dem Anwendungsformular anzuzeigen.

In diesem Artikel werden wir uns ansehen, wie eine SQL-Abfrage in einer DataGridView in C# ausgegeben wird. Ein DataGridView ist ein praktisches und flexibles Steuerelement, mit dem Sie Daten als Tabelle anzeigen und bearbeiten können. Dafür werden wir es verwenden .NET Framework, das eine umfangreiche Reihe von Werkzeugen für die Arbeit mit Datenbanken bietet.

Schritt 1: Verbindung mit der Datenbank herstellen

Der erste Schritt besteht darin, eine Verbindung mit der Datenbank herzustellen. Dazu benötigen wir die folgenden Komponenten: SqlConnection - um eine Verbindung mit einer Datenbank herzustellen, SqlCommand - um SQL-Abfragen auszuführen, und SqlDataAdapter - um Daten aus einer Datenbank in eine DataTable zu füllen.

Schritt 2: Ausführen einer SQL-Abfrage

Nachdem wir eine Verbindung mit der Datenbank hergestellt und einen SqlCommand erstellt haben, können wir die SQL-Abfrage mit der ExecuteReader() -Methode ausführen. Das resultierende Ergebnis wird als SqlDataReader-Objekt dargestellt, mit dem wir die DataTable mit dem SqlDataAdapter füllen können.

Schritt 3: Anzeigen von Daten in einer DataGridView

Der letzte Schritt besteht darin, die empfangenen Daten in einer DataGridView anzuzeigen. Dazu erstellen wir eine DataGridView-Instanz und binden sie an die gefüllte DataTable. Auf diese Weise können wir das Ergebnis der SQL-Abfrage auf dem Anwendungsformular sehen.

Wie gebe ich eine SQL-Abfrage in einer DataGridView in C aus#

Zunächst müssen Sie eine Datenbankverbindung einrichten. Dies kann jede Datenbank sein, z. B. Microsoft SQL Server, Oracle oder MySQL. Zum Konfigurieren einer Verbindung müssen Sie normalerweise eine Verbindungszeichenfolge angeben, die Informationen über den Datenbankserver, den Datenbanknamen und die Zugriffsrechte des Benutzers enthält.

Nach dem Einrichten der Verbindung können wir SQL-Abfragen für die Datenbank ausführen und die Ergebnisse als Tabelle erhalten. Verwenden Sie die Klasse, um die SQL-Abfrage auszuführen SqlCommand, die eine SQL-Abfrage und eine Datenbankverbindung akzeptiert.

string connectionString = "Your Connection String";string sqlQuery = "Your SQL Query";using (SqlConnection connection = new SqlConnection(connectionString))>

Im obigen Code ist die Variable connectionString enthält eine Datenbankverbindungszeichenfolge und eine Variable sqlQuery enthält die SQL-Abfrage, die Sie ausführen möchten.

Anschließend wird eine neue Instanz der Klasse erstellt SqlConnection mit der angegebenen Verbindungszeichenfolge wird die Methode aufgerufen Open(), um eine Datenbankverbindung zu öffnen.

Anschließend wird eine neue Instanz der Klasse erstellt SqlCommand mit der angegebenen SQL-Abfrage und Verbindung. Dann wird eine Instanz der Klasse erstellt SqlDataAdapter, die die Beziehung zwischen den SQL-Ergebnissen der Abfrage und dem Objekt bereitstellt DataTable.

Methode Fill() Klasse SqlDataAdapter füllen DataTable daten aus einer SQL-Abfrage. Schließlich legen wir die Datenquelle für die DataGridView mithilfe der Eigenschaft fest DataSource.

Nachdem dieser Code ausgeführt wurde, zeigt die DataGridView die Ergebnisse der SQL-Abfrage als Tabelle an.

Beachten Sie, dass der obige Code ein grundlegendes Beispiel ist und möglicherweise eine zusätzliche Fehlerbehandlung erforderlich ist, um sicherzustellen, dass SQL-Abfragen korrekt sind und so weiter.

Eines der häufigsten Szenarien für die Verwendung von DataGridView besteht darin, Daten anzuzeigen, die aus SQL-Abfragen stammen. Betrachten Sie einige Beispiele, die Ihnen helfen, diesen Prozess zu meistern.

Beispiel 1: Anzeigen der Ergebnisse einer SELECT-Abfrage

using (SqlConnection connection = new SqlConnection(connectionString))

In diesem Beispiel erstellen wir eine Datenbankverbindung, führen eine SELECT-Abfrage aus und speichern die Ergebnisse in einer DataTable. Dann setzen wir einfach die Datenquelle DataGridView auf die DataTable. Als Ergebnis zeigt unsere Tabelle alle Datensätze aus der Tabelle "Employees" an.

Beispiel 2: Eine parametrisierte SELECT-Abfrage

using (SqlConnection connection = new SqlConnection(connectionString)) @age";SqlCommand command = new SqlCommand(query, connection);command.Parameters.AddWithValue("@age", 30);SqlDataReader reader = command.ExecuteReader();DataTable dataTable = new DataTable();dataTable.Load(reader);dataGridView.DataSource = dataTable;>

In diesem Beispiel führen wir eine parametrisierte SELECT-Abfrage aus, um alle Mitarbeiter ab 30 Jahren anzuzeigen. Befehl Parameters.AddWithValue() wird verwendet, um den Wert des Parameters "@age" zu übergeben. Dann verwenden wir die DataTable erneut und legen sie als Datenquelle für die DataGridView fest.

Beispiel 3: Anzeigen von JOIN-Abfrageergebnissen

using (SqlConnection connection = new SqlConnection(connectionString))

In diesem Beispiel führen wir eine JOIN-Abfrage aus, um die Vor- und Nachnamen der Mitarbeiter sowie die Namen der Abteilungen anzuzeigen, in denen sie tätig sind. Die JOIN-Ergebnisse der Abfrage werden ebenfalls in der DataTable gespeichert und in der DataGridView angezeigt.

Zunächst müssen Sie alle erforderlichen Komponenten für die Arbeit mit der Datenbank bereitstellen. In diesem Beispiel verwenden wir SQL Server, daher müssen Sie einen Verweis auf die Systembibliothek hinzufügen.Data.SqlClient .

using System.Data.SqlClient;

Erstellen Sie dann ein Datenbankverbindungsobjekt, indem Sie eine Verbindungszeichenfolge angeben. Die Verbindungszeichenfolge enthält Informationen über den Server, den Datenbanknamen und die Anmeldeinformationen.

string connectionString = "Data Source=SERVER_NAME;Initial Catalog=DATABASE_NAME;User (SqlConnection connection = new SqlConnection(connectionString))

Erstellen Sie dann ein SqlCommand-Befehlsobjekt, indem Sie die SQL-Abfrage und das Verbindungsobjekt angeben.

string query = "SELECT * FROM Table_Name";SqlCommand command = new SqlCommand(query, connection);

Erstellen Sie ein SqlDataAdapter-Objekt, und übergeben Sie den SqlCommand-Befehl an ihn.

SqlDataAdapter adapter = new SqlDataAdapter(command);

Erstellen Sie ein DataTable-Objekt, um die SQL-Ergebnisse der Abfrage zu speichern.

DataTable dataTable = new DataTable();

Verwenden Sie die Fill-Methode des SqlDataAdapter-Objekts, um die DataTable mit Daten aus der Datenbank zu füllen.

adapter.Fill(dataTable);

Jetzt haben Sie eine Datatable, die die SQL-Ergebnisse der Abfrage enthält. Sie können diese Tabelle an eine DataGridView übergeben, um die Daten als Tabelle anzuzeigen.

dataGridView.DataSource = dataTable;

Die DataGridView zeigt automatisch die Daten aus der DataTable an. Wenn Sie das Aussehen einer Tabelle anpassen möchten, können Sie die Eigenschaften von DataGridView verwenden.

Nachdem Sie die SQL-Abfrage in der DataGridView ausgegeben haben, vergessen Sie nicht, die Datenbankverbindung zu schließen.

connection.Close();

Und hier ist es fertig! Jetzt wissen Sie, wie Sie eine SQL-Abfrage in einer DataGridView in C# ausgeben. Dies kann nützlich sein, um Suchergebnisse anzuzeigen, Daten in einer Datenbank zu filtern oder zu sortieren.