Czytaj dane Excel i wstawiaj do bazy danych z C#
W tym artykułe omówimy, jak używać biblioteki IronXL, biblioteki C# dla programu Excel, do odczytu danych z pliku Excel i wstawiania ich do tabeli bazy danych.
1. IronXL
IronXL to potężna biblioteka oprogramowania przeznaczona dla programistów .NET, zapewniająca im łatwy w użyciu interfejs API do odczytu, zapisu i manipulacji plikami Excel w ich aplikacjach .NET. Oferuje ona kompleksowy zestaw funkcji do tworzenia, edycji i eksportowania arkuszy kalkulacyjnych Excel, a wszystko to bez konieczności instalowania pakietu Microsoft Office lub programu Excel na komputerze docelowym. Dzięki obsłudze szerokiej gamy formatów plików, w tym XLS, XLSX, CSV, TSV i innych, biblioteka ta ułatwia programistom tworzenie aplikacji opartych na Excelu, które można wdrożyć w dowolnym miejscu. IronXL oferuje również zaawansowane funkcje, takie jak tworzenie wykresów, wizualizacja danych i analiza danych, które usprawniają proces tworzenia oprogramowania w projektach o małej i dużej skali.
2. Wymagania wstępne
Zanim będzie można użyć biblioteki IronXL do zapisywania danych z pliku Excel do bazy danych, należy spełnić pewne warunki wstępne. Obejmują one:
- Posiadanie zainstalowanego programu Visual Studio na komputerze w celu utworzenia projektu w języku C#.
- Przed utworzeniem projektu w języku C# upewnij się, że w systemie zainstalowano również ASP.NET.
- Zainstaluj bibliotekę IronXL w swoim systemie, aby eksportować dane. Można je uzyskać, pobierając pakiet IronXL NuGet z menedżera pakietów NuGet w programie Visual Studio.
- Posiadanie zainstalowanego SQL w Visual Studio.
3. Tworzenie nowego projektu w Visual Studio
Zanim będzie można wykorzystać bibliotekę IronXL do wykonywania operacji związanych z programem Excel, należy utworzyć projekt .NET w programie Visual Studio. Chociaż kompatybilna jest każda wersja Visual Studio, zaleca się korzystanie z najnowszej dostępnej wersji. Możesz wybierać spośród różnych szablonów projektów, takich jak Windows Forms i ASP.NET, w zależności od wymagań projektu. W tym samouczku zalecamy użycie szablonu projektu Console Application, aby zademonstrować sposób pracy z IronXL.
Utwórz nowy projekt
Po wybraniu typu projektu należy nadać mu nazwę i wybrać lokalizację. Można również określić preferowany framework dla projektu, np. .NET Core 6.
Konfiguracja projektu
Po utworzeniu nowego projektu można uzyskać dostęp do pliku program.cs, w którym można pisać kod i uruchamiać aplikację.
Projekt z otwartym kodem
Teraz, gdy projekt Visual Studio został utworzony, zainstalujmy IronXL.
4. Zainstaluj IronXL
Bibliotekę IronXL można pobrać i zainstalować na różne sposoby, ale w tym artykułe omówiono dwie najprostsze metody:
- Korzystanie z pakietów NuGet w Visual Studio.
- Korzystanie z wiersza poleceń programu Visual Studio.
4.1 Korzystanie z programu Visual Studio
Aby zainstalować bibliotekę IronXL, należy w pierwszej kolejności skorzystać z menedżera pakietów NuGet w programie Visual Studio. Wystarczy otworzyć menedżera pakietów NuGet i wyszukać IronXL w zakładce Przeglądaj. Po znalezieniu IronXL w wynikach wyszukiwania wybierz go i kontynuuj instalację. Po zakończeniu instalacji możesz zacząć korzystać z biblioteki IronXL w swoim projekcie.
Poniższy zrzut ekranu pokazuje, jak otworzyć menedżera pakietów NuGet w programie Visual Studio.
Menedżer pakietów NuGet
Poniższy zrzut ekranu przedstawia IronXL w wynikach wyszukiwania:
Wyniki wyszukiwania IronXL
4.2 Korzystanie z wiersza poleceń programu Visual Studio
Wielu programistów woli instalować pakiety za pomocą interfejsu wiersza poleceń. Aby zainstalować IronXL za pomocą wiersza poleceń, wykonaj następujące czynności:
- W programie Visual Studio przejdź do menu Narzędzia > Menedżer pakietów NuGet > Konsola menedżera pakietów.
-
Wprowadź następujący wiersz w zakładce Konsola menedżera pakietów:
Install-Package IronXLInstall-Package IronXLSHELL
Pakiet zostanie pobrany i zainstalowany w bieżącym projekcie.
Instalacja za pomocą wiersza poleceń
5. Instalacja i konfiguracja bazy danych SQL Server
Aby zainstalować i zintegrować tabelę bazy danych SQL Server z projektem C#, najpierw przejdź do menedżera pakietów NuGet, wyszukaj System.Data.SqlClient i zainstaluj go.
Wyszukaj i zainstaluj SqlClient w interfejsie użytkownika menedżera pakietów NuGet
Po zainstalowaniu przejdź do menu projektu i kliknij "Dodaj nowy element".
Dodaj nowy element
Pojawi się nowe okno. Wybierz opcję Dane z menu bocznego, a następnie kliknij pozycję Baza danych oparta na usługach z listy. Wpisz odpowiednią nazwę bazy danych i kliknij przycisk Dodaj.
Wybierz bazę danych opartą na usługach
Następnie w oknie Solution Explorer kliknij prawym przyciskiem myszy na nowo utworzoną bazę danych i wybierz opcję "Open". Spowoduje to otwarcie nowego paska bocznego.
Kliknij prawym przyciskiem myszy i wybierz Otwórz
W nowym pasku bocznym kliknij swoją bazę danych i przejdź do jej właściwości. Stamtąd skopiuj ciąg połączenia.
Kliknij prawym przyciskiem myszy i wybierz Właściwości
Obsługa ciągu połączenia
Po skopiowaniu preferencji połączenia kliknij instancję bazy danych, aby otworzyć nową listę. Kliknij prawym przyciskiem myszy folder tabeli i wybierz opcję "Dodaj nową tabelę".
Dodaj nową tabelę
Aby utworzyć nową tabelę w bazie danych, wykonaj następujące czynności:
- Otwórz nową stronę projektowania tabeli danych.
- Dodaj następujące zapytanie SQL, które utworzy nową tabelę z trzema kolumnami:
Id,NameiNumber. - Kliknij przycisk "Aktualizuj" u góry strony.
- Nowo wygenerowana tabela zostanie dodana do bazy danych.
CREATE TABLE [dbo].[Table]
(
[Id] INT NOT NULL PRIMARY KEY,
[Name] VARCHAR(100) NOT NULL,
[Number] INT
)
Teraz, gdy środowisko SQL jest już skonfigurowane, utwórzmy przykładowe dane, aby wypełnić tę bazę danymi z Excela.
Dane z pliku Excel
6. Importowanie danych z pliku Excel i eksportowanie ich do bazy danych za pomocą IronXL
Dzięki IronXL programiści mogą zautomatyzować proces przesyłania danych między plikami Excel a bazami danych, co pozwala zaoszczędzić sporo czasu i wysiłku. Korzystając z IronXL, programiści mogą usprawnić swój przepływ pracy i wyeliminować konieczność ręcznego wprowadzania danych, zapewniając ich dokładność i aktualność.
Po skonfigurowaniu serwera SQL i skopiowaniu ciągu połączenia wystarczy wkleić go do poniższego kodu, połączyć plik Excel z kodem i w razie potrzeby zmienić zapytanie SQL. Następnie wystarczy uruchomić kod, a dane zostaną wyeksportowane do tabeli bazy danych.
using IronXL; // Import the IronXL library
using System.Data; // Import data handling library
using System.Data.SqlClient; // Import SQL Client library for SQL database operations
// Load the Excel workbook
WorkBook workBook = WorkBook.Load("book.xlsx");
// Convert the workbook into a DataSet
DataSet dataSet = workBook.ToDataSet();
// Define the SQL query to select data from the table
string sql = "SELECT * FROM [dbo].[Table]";
// Connection string for the SQL Server
string connectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\USERS\BUTTW\SOURCE\REPOS\CREATE PDF\CREATE PDF\DATABASE1.MDF;Integrated Security=True";
// Open a connection to the SQL Server using the connection string
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open(); // Open connection
// Use SqlDataAdapter to update SQL table with DataSet from Excel file
SqlDataAdapter adapter = new SqlDataAdapter(sql, connection);
adapter.Update(dataSet);
}
using IronXL; // Import the IronXL library
using System.Data; // Import data handling library
using System.Data.SqlClient; // Import SQL Client library for SQL database operations
// Load the Excel workbook
WorkBook workBook = WorkBook.Load("book.xlsx");
// Convert the workbook into a DataSet
DataSet dataSet = workBook.ToDataSet();
// Define the SQL query to select data from the table
string sql = "SELECT * FROM [dbo].[Table]";
// Connection string for the SQL Server
string connectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\USERS\BUTTW\SOURCE\REPOS\CREATE PDF\CREATE PDF\DATABASE1.MDF;Integrated Security=True";
// Open a connection to the SQL Server using the connection string
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open(); // Open connection
// Use SqlDataAdapter to update SQL table with DataSet from Excel file
SqlDataAdapter adapter = new SqlDataAdapter(sql, connection);
adapter.Update(dataSet);
}
Imports IronXL ' Import the IronXL library
Imports System.Data ' Import data handling library
Imports System.Data.SqlClient ' Import SQL Client library for SQL database operations
' Load the Excel workbook
Private workBook As WorkBook = WorkBook.Load("book.xlsx")
' Convert the workbook into a DataSet
Private dataSet As DataSet = workBook.ToDataSet()
' Define the SQL query to select data from the table
Private sql As String = "SELECT * FROM [dbo].[Table]"
' Connection string for the SQL Server
Private connectionString As String = "Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\USERS\BUTTW\SOURCE\REPOS\CREATE PDF\CREATE PDF\DATABASE1.MDF;Integrated Security=True"
' Open a connection to the SQL Server using the connection string
Using connection As New SqlConnection(connectionString)
connection.Open() ' Open connection
' Use SqlDataAdapter to update SQL table with DataSet from Excel file
Dim adapter As New SqlDataAdapter(sql, connection)
adapter.Update(dataSet)
End Using
Aby sprawdzić, czy dane zostały pomyślnie wyeksportowane do bazy danych, ponownie kliknij prawym przyciskiem myszy katalog tabeli i wybierz opcję "Nowe zapytanie". Otworzy się nowa strona. Wybierz swoją bazę danych z górnego paska i uruchom odpowiednie zapytanie SQL, aby pobrać dane.
SELECT * FROM [dbo].[Table]
Naciśnij zielony przycisk, a wynik pojawi się za chwilę.
Dane z bazy danych
W ten sposób można zapisać dane zaimportowane z pliku Microsoft Excel do bazy danych.
7. Podsumowanie
Praca z arkuszami kalkulacyjnymi Excel jest powszechnym zadaniem w wielu aplikacjach, a wstawianie danych z arkusza Excel do tabeli bazy danych może usprawnić procesy zarządzania danymi. Jednym ze sposobów realizacji tego zadania w języku C# jest użycie bibliotek umożliwiających odczyt i manipulowanie plikami Excel, takich jak biblioteka IronXL. Korzystając z tej biblioteki, programiści mogą łatwo wyodrębnić dane z arkusza Excel i wstawić je do tabeli bazy danych, upraszczając proces zarządzania danymi i zmniejszając ryzyko wystąpienia błędów. W tym artykułe omówiono kroki związane z dodawaniem danych z pliku Excel do tabeli SQL Server w bazie danych SQL Server przy użyciu biblioteki IronXL. Zawiera również krótkie wprowadzenie do biblioteki IronXL, omawia wymagania niezbędne do wstawiania danych oraz opisuje, jak utworzyć nowy projekt w Visual Studio, zainstalować IronXL i skonfigurować bazę danych SQL Server. Zapraszamy do zapoznania się z poniższym samouczkiem, aby dowiedzieć się, jak odczytywać pliki Excel w języku C#.
Ponadto IronXL oferuje również zaawansowane funkcje, w tym obsługę formatowania komórek, takie jak wyrównanie tekstu, rozmiar czcionki, kolor, zamrożenie panelu, dodawanie formuł, stosowanie formatowania warunkówego oraz szyfrowanie hasłem.
Użytkownicy mogą również skorzystać z Iron Suite, zestawu narzędzi do tworzenia oprogramowania, który obejmuje IronPDF, IronOCR, IronXL, IronBarcode oraz IronWebscraper.
Często Zadawane Pytania
Jak odczytać dane z pliku Excel przy użyciu języka C#?
Możesz użyć IronXL do odczytu danych z pliku Excel w języku C#. IronXL udostępnia metody otwierania i odczytu plików Excel, umożliwiając programowy dostęp do danych i manipulowanie nimi.
Jakie kroki należy wykonać, aby wstawić dane z Excela do bazy danych SQL w języku C#?
Aby wstawić dane z Excela do bazy danych SQL przy użyciu języka C#, należy najpierw odczytać dane za pomocą biblioteki IronXL i przekonwertować je do formatu DataSet. Następnie należy użyć klasy SqlDataAdapter do zaktualizowania tabeli bazy danych SQL przy użyciu zestawu danych DataSet.
Jak utworzyć nową tabelę bazy danych do importowania danych z Excela?
Można utworzyć nową tabelę bazy danych, wykonując zapytanie SQL, takie jak CREATE TABLE [dbo].[Table] ( [Id] INT NOT NULL PRIMARY KEY, [Name] VARCHAR(100) NOT NULL, [Number] INT ), aby zdefiniować strukturę tabeli.
Jakie są wymagania wstępne dotyczące korzystania z IronXL w projekcie C#?
Wymagania wstępne obejmują zainstalowanie programu Visual Studio, biblioteki IronXL z menedżera pakietów NuGet oraz skonfigurowanie serwera SQL Server w środowisku Visual Studio.
Jak sprawdzić, czy dane z Excela zostały pomyślnie wstawione do bazy danych?
Możesz zweryfikować wstawienie danych, uruchamiając zapytanie SQL, takie jak SELECT * FROM [dbo].[Table], aby pobrać i przejrzeć wpisy danych w bazie danych SQL Server.
Jakie zaawansowane funkcje oferuje IronXL?
IronXL oferuje zaawansowane funkcje, takie jak tworzenie wykresów, wizualizacja danych, formatowanie komórek, zamrażanie paneli, dodawanie formuł, formatowanie warunkówe oraz szyfrowanie hasłem.
Jak zainstalować IronXL w moim projekcie Visual Studio?
Możesz zainstalować IronXL w swoim projekcie Visual Studio, używając menedżera pakietów NuGet do wyszukania i zainstalowania IronXL lub wykonując polecenie Install-Package IronXL w wierszu poleceń Visual Studio.
Dłączego warto używać IronXL do przesyłania danych między Excelem a bazami danych SQL?
Wykorzystanie IronXL do transferu danych między Excelem a bazami danych SQL automatyzuje ten proces, zapewniając dokładność danych i oszczędzając czas, przy jednoczesnym utrzymaniu aktualności informacji.




