IRONXL VERWENDEN

Lesen von Excel-Daten und Einfügen in eine Datenbank mit C#

Regan Pun
Regan Pun
1. Mai 2023
Aktualisiert 24. März 2024
Teilen Sie:

In diesem Artikel wird untersucht, wie IronXL, eine C#-Excel-Bibliothek, verwendet werden kann, um Daten aus einer Excel-Datei zu lesen und in eine Datenbanktabelle einzufügen.

1. IronXL

IronXL ist eine leistungsstarke Softwarebibliothek für .NET-Entwickler, die ihnen eine einfach zu verwendende API zum Lesen, Schreiben und Bearbeiten von Excel-Dateien in ihren .NET-Anwendungen bietet. Es bietet eine umfassende Funktionspalette zum Erstellen, Bearbeiten und Exportieren von Excel-Tabellen, ohne dass Microsoft Office oder Excel auf dem Zielrechner installiert sein müssen. Mit Unterstützung für eine Vielzahl von Dateiformaten, einschließlich XLS, XLSX, CSV, TSV und mehr, ermöglicht diese Bibliothek Entwicklern, Excel-basierte Anwendungen zu erstellen, die überall eingesetzt werden können. IronXL bietet auch erweiterte Funktionen wie Diagrammerstellung, Datenvisualisierung und Datenanalyse, um den Entwicklungsprozess für kleine bis große Projekte zu optimieren.

2. Voraussetzungen

Bevor Sie die IronXL-Bibliothek verwenden können, um aus einer Excel-Datei in eine Datenbank zu schreiben, müssen Sie bestimmte Voraussetzungen erfüllen. Dazu gehören:

  • Visual Studio muss auf Ihrem Computer installiert sein, damit Sie ein C#-Projekt erstellen können.
  • Stellen Sie sicher, dass ASP.NET auch auf Ihrem System installiert ist, bevor Sie ein C#-Projekt erstellen.
  • Installieren Sie die IronXL-Bibliothek auf Ihrem System, um Daten zu exportieren. Sie erhalten es, indem Sie das IronXL NuGet-Paket über den NuGet-Paketmanager in Visual Studio herunterladen.
  • SQL in Visual Studio installiert haben.

3. Erstellen eines neuen Projekts in Visual Studio

Bevor Sie die IronXL-Bibliothek nutzen können, um Excel-bezogene Operationen durchzuführen, müssen Sie ein .NET-Projekt in Visual Studio erstellen. Zwar ist jede Version von Visual Studio kompatibel, es wird jedoch empfohlen, die neueste verfügbare Version zu verwenden. Sie können je nach Ihren Projektanforderungen aus verschiedenen Projektvorlagen wie Windows Forms und ASP.NET wählen. Für dieses Tutorial wird die Projektvorlage Konsolenanwendung empfohlen, um zu zeigen, wie man mit IronXL arbeitet.

Wie man Excel-Daten liest und in eine Datenbanktabelle in C# einfügt, Abbildung 1: Neues Projektfenster erstellen

Ein neues Projekt erstellen

Sobald Sie den Projekttyp ausgewählt haben, müssen Sie das Projekt benennen und seinen Speicherort auswählen. Sie können auch das bevorzugte Framework, z. B. .NET Core 6, für das Projekt angeben.

Wie man Excel-Daten liest und in eine Datenbanktabelle in C# einfügt, Abbildung 2: Projektkonfiguration

Projektkonfiguration

Nachdem das neue Projekt erstellt wurde, können Sie auf die Datei program.cs zugreifen, in der Sie Code schreiben und die Anwendung ausführen können.

Wie man Excel-Daten liest und in eine Datenbanktabelle in C# einfügt, Abbildung 3: Projekt mit offenem Code

Projekt mit offenem Code

Nachdem das Visual Studio-Projekt erstellt wurde, können wir IronXL installieren.

4. IronXL installieren

Die IronXL-Bibliothek kann auf verschiedene Arten heruntergeladen und installiert werden, aber in diesem Artikel werden die zwei einfachsten Methoden behandelt:

  • Verwendung von NuGet-Paketen in Visual Studio.
  • Verwendung der Visual Studio-Befehlszeile.

4.1 Visual Studio verwenden

Um die IronXL-Bibliothek zu installieren, können Sie zunächst den NuGet-Paketmanager in Visual Studio verwenden. Öffnen Sie einfach den NuGet Package Manager und suchen Sie auf der Registerkarte Browse nach IronXL. Sobald Sie IronXL in den Suchergebnissen gefunden haben, wählen Sie es aus und fahren mit der Installation fort. Sobald die Installation abgeschlossen ist, können Sie die IronXL-Bibliothek in Ihrem Projekt verwenden.

Der folgende Screenshot zeigt, wie Sie den NuGet Package Manager in Visual Studio öffnen.

Wie man Excel-Daten liest und in eine Datenbanktabelle in C# einfügt, Abbildung 4: NuGet-Paket-Manager

NuGet-Paket-Manager

Der folgende Screenshot zeigt IronXL in den Suchergebnissen:

So lesen Sie Excel-Daten und fügen sie in eine Datenbanktabelle in C# ein, Abbildung 5: IronXL-Suchergebnis

IronXL-Suchergebnis

4.2 Verwendung der Visual Studio-Befehlszeile

Viele Entwickler ziehen es vor, Pakete über eine Befehlszeilenschnittstelle zu installieren. Um IronXL über die Kommandozeile zu installieren, gehen Sie folgendermaßen vor:

  • In Visual Studio, gehen Sie zu Tools > NuGet-Paket-Manager > Paket-Manager-Konsole.
  • Geben Sie auf der Registerkarte Paketmanager-Konsole die folgende Zeile ein:
  :ProductInstall

Das Paket wird heruntergeladen und in das aktuelle Projekt installiert.

Wie man Excel-Daten liest und in eine Datenbanktabelle in C# einfügt, Abbildung 6: Installation über die Befehlszeile

Installation über die Befehlszeile

5. Installieren und Konfigurieren der SQL Server-Datenbank

Um die SQL Server-Datenbanktabelle in Ihr C#-Projekt zu installieren und zu integrieren, gehen Sie zuerst zum NuGet-Paket-Manager, suchen Sie nach System.Data.SqlClient` und installieren Sie es.

So lesen Sie Excel-Daten und fügen Sie sie in eine Datenbanktabelle in C# ein, Abbildung 7: Suchen und installieren Sie SqlClient in der Benutzeroberfläche des NuGet-Paket-Managers

Suchen und installieren Sie SqlClient in der NuGet-Paket-Manager-UI

Gehen Sie nach der Installation in das Projektmenü und klicken Sie auf "Neues Element hinzufügen".

Wie man Excel-Daten liest und in eine Datenbanktabelle in C# einfügt, Abbildung 8: Neues Element hinzufügen

Neues Element hinzufügen

Es erscheint ein neues Fenster. Wählen Sie Daten aus dem Seitenmenü und klicken Sie dann in der Liste auf Service-Based Database. Geben Sie einen geeigneten Namen für die Datenbank ein und klicken Sie auf die Schaltfläche Hinzufügen.

Wie man Excel-Daten liest und in eine Datenbanktabelle in C# einfügt, Abbildung 9: Dienstbasierte Datenbank auswählen

Dienstbasierte Datenbank auswählen

Klicken Sie dann im Projektmappen-Explorer mit der rechten Maustaste auf die neu erstellte Datenbank und wählen Sie "Öffnen". Dadurch wird eine neue Seitenleiste geöffnet.

So lesen Sie Excel-Daten und fügen sie in eine Datenbanktabelle in C# ein, Abbildung 10: Rechtsklick und Öffnen auswählen

Rechtsklick und Öffnen auswählen

Klicken Sie in der neuen Seitenleiste auf Ihre Datenbank und gehen Sie zu deren Eigenschaften. Kopieren Sie von dort die Verbindungszeichenfolge.

Wie man Excel-Daten liest und in eine Datenbanktabelle in C# einfügt, Abbildung 11: Rechtsklick und Eigenschaften auswählen

Rechtsklicken und Eigenschaften auswählen

Wie man Excel-Daten liest und in eine Datenbanktabelle in C# einfügt, Abbildung 12: Verbindungszeichenfolge verwalten

Verbindungszeichenfolge verwalten

Nachdem Sie die Verbindungseinstellungen kopiert haben, klicken Sie auf Ihre Datenbankinstanz, um eine neue Liste zu öffnen. Klicken Sie mit der rechten Maustaste auf den Tabellenordner und wählen Sie "Neue Tabelle hinzufügen".

Wie man Excel-Daten liest und in eine Datenbanktabelle in C# einfügt, Abbildung 13: Neue Tabelle hinzufügen

Neue Tabelle hinzufügen

Gehen Sie folgendermaßen vor, um eine neue Tabelle in der Datenbank zu erstellen:

  1. Öffnen Sie eine neue Seite für den Entwurf einer Datentabelle.

  2. Fügen Sie die folgende SQL-Abfrage hinzu, die eine neue Tabelle mit drei Spalten erstellen wird: Id, Name und Number.

  3. Klicken Sie auf die Schaltfläche "Aktualisieren" am oberen Rand der Seite.

  4. Die neu erstellte Tabelle wird der Datenbank hinzugefügt.
CREATE TABLE [dbo].[Table]
(
  [Id] INT NOT NULL PRIMARY KEY,
  [Name] varchar(100) NOT NULL,
  [number] INT
)
CREATE TABLE [dbo].[Table]
(
  [Id] INT NOT NULL PRIMARY KEY,
  [Name] varchar(100) NOT NULL,
  [number] INT
)
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'CREATE TABLE [dbo].[Table] ([Id] INT @NOT NULL PRIMARY KEY, [Name] varchar(100) @NOT NULL, [number] INT)
$vbLabelText   $csharpLabel

Nachdem die SQL-Umgebung nun eingerichtet ist, können wir einige Beispieldaten erstellen, um diese Datenbank mit Excel-Daten zu füllen.

Wie man Excel-Daten liest und in eine Datenbanktabelle in C# einfügt, Abbildung 14: Excel-Datei-Daten

Excel-Datei-Daten

6. Daten aus Excel-Dateien importieren und in eine Datenbank exportieren mit IronXL

Mit IronXL können Entwickler den Prozess der Datenübertragung zwischen Excel-Dateien und Datenbanken automatisieren, was eine erhebliche Zeit- und Arbeitsersparnis bedeutet. Durch den Einsatz von IronXL können Entwickler ihre Arbeitsabläufe rationalisieren und die manuelle Dateneingabe überflüssig machen, wodurch sichergestellt wird, dass die Daten korrekt und aktuell sind.

Sobald der SQL-Server eingerichtet und die Verbindungszeichenfolge kopiert ist, fügen Sie die Verbindungszeichenfolge einfach in den unten stehenden Code ein, verknüpfen Ihre Excel-Datei mit dem Code und ändern die SQL-Abfrage, falls erforderlich. Führen Sie dann einfach den Code aus, und die Daten werden in die Datenbanktabelle exportiert.

using IronXL;
using System.Data;
using System.Data.SqlClient;

WorkBook workBook = WorkBook.Load("book.xlsx");

DataSet dataSet = workBook.ToDataSet();

string sql = "SELECT * FROM [dbo].[Table]";

string connectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\USERS\BUTTW\SOURCE\REPOS\CREATE PDF\CREATE PDF\DATABASE1.MDF;Integrated Security=True";

using (SqlConnection connection = new SqlConnection(connectionString))
{
    connection.Open();
    SqlDataAdapter adapter = new SqlDataAdapter(sql, connection);
    adapter.Update(dataSet);
}
using IronXL;
using System.Data;
using System.Data.SqlClient;

WorkBook workBook = WorkBook.Load("book.xlsx");

DataSet dataSet = workBook.ToDataSet();

string sql = "SELECT * FROM [dbo].[Table]";

string connectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\USERS\BUTTW\SOURCE\REPOS\CREATE PDF\CREATE PDF\DATABASE1.MDF;Integrated Security=True";

using (SqlConnection connection = new SqlConnection(connectionString))
{
    connection.Open();
    SqlDataAdapter adapter = new SqlDataAdapter(sql, connection);
    adapter.Update(dataSet);
}
Imports IronXL
Imports System.Data
Imports System.Data.SqlClient

Private workBook As WorkBook = WorkBook.Load("book.xlsx")

Private dataSet As DataSet = workBook.ToDataSet()

Private sql As String = "SELECT * FROM [dbo].[Table]"

Private connectionString As String = "Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\USERS\BUTTW\SOURCE\REPOS\CREATE PDF\CREATE PDF\DATABASE1.MDF;Integrated Security=True"

Using connection As New SqlConnection(connectionString)
	connection.Open()
	Dim adapter As New SqlDataAdapter(sql, connection)
	adapter.Update(dataSet)
End Using
$vbLabelText   $csharpLabel

Um zu überprüfen, ob die Daten erfolgreich in die Datenbank exportiert wurden, klicken Sie erneut mit der rechten Maustaste auf das Tabellenverzeichnis und klicken Sie auf "Neue Abfrage" Es öffnet sich eine neue Seite. Wählen Sie Ihre Datenbank in der oberen Leiste aus und führen Sie die entsprechende SQL-Abfrage aus, um die Daten abzurufen.

SELECT * FROM [dbo].[Table]

Drücken Sie die grüne Taste, und das Ergebnis wird innerhalb einer Sekunde angezeigt.

Wie man Excel-Daten liest und in eine Datenbanktabelle in C# einfügt, Abbildung 15: Datenbankdaten

Sprachdatenbank

So können Sie aus einer Microsoft Excel-Datei importierte Daten in eine Datenbank schreiben.

7. Schlussfolgerung

Die Arbeit mit Excel-Tabellen ist eine häufige Aufgabe in vielen Anwendungen, und das Einfügen von Daten aus einer Excel-Tabelle in eine Datenbanktabelle kann Datenverwaltungsprozesse rationalisieren. Eine Möglichkeit, diese Aufgabe in C# zu erfüllen, ist die Verwendung von Bibliotheken, die das Lesen und Bearbeiten von Excel-Dateien ermöglichen, wie z. B. IronXL. Mit dieser Bibliothek können Entwickler Daten aus einem Excel-Blatt extrahieren und in eine Datenbanktabelle einfügen, was den Datenverwaltungsprozess vereinfacht und das Fehlerrisiko verringert. Dieser Artikel beschreibt die Schritte zum Hinzufügen von Daten aus einer Excel-Datei zu einer SQL Server-Tabelle in einer SQL Server-Datenbank unter Verwendung der IronXL-Bibliothek. Es bietet auch eine kurze Einführung in die IronXL-Bibliothek, bespricht die Voraussetzungen für das Einfügen von Daten und beschreibt, wie ein neues Projekt in Visual Studio erstellt, IronXL installiert und eine SQL Server-Datenbank konfiguriert wird. Bitte besuchen Sie das folgende Tutorial, um zu lernen, wie man Excel-Dateien in C# liest.

Zusätzlich bietet IronXL auch erweiterte Funktionen, einschließlich Unterstützung für Zellformatierungen wie Textausrichtung, Schriftgröße, Farbe, Einfrieren von Bereichen, Hinzufügen von Formeln, anwenden bedingter Formatierungen und Verschlüsselung mit einem Passwort.

Benutzer können auch von Iron Suite profitieren, einer Sammlung von Software-Entwicklungstools, die IronPDF, IronOCR, IronXL, IronBarcode und IronWebscraper umfasst.

Regan Pun
Software-Ingenieur
Regan schloss sein Studium an der University of Reading mit einem BA in Elektrotechnik ab. Bevor er zu Iron Software kam, konzentrierte er sich in seinen früheren Jobs auf einzelne Aufgaben. Was ihm bei Iron Software am meisten Spaß macht, ist das Spektrum der Aufgaben, die er übernehmen kann, sei es im Vertrieb, im technischen Support, in der Produktentwicklung oder im Marketing. Es macht ihm Spaß, die Art und Weise zu verstehen, wie Entwickler die Bibliothek von Iron Software nutzen, und dieses Wissen zu nutzen, um die Dokumentation und die Produkte kontinuierlich zu verbessern.
< PREVIOUS
Exportieren einer Datenbasis nach Excel in ASP.NET Core
NÄCHSTES >
Konvertieren von Datensätzen in Excel in C#