using IronXL;
using System;
using System.Linq;
// Supported for XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Get any existing worksheet
WorkSheet firstSheet = workBook.DefaultWorkSheet;
// Select a cell and return the converted value
int cellValue = workSheet["A2"].IntValue;
// Read from ranges of cells elegantly.
foreach (var cell in workSheet["A2:A10"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
// Calculate aggregate values such as Min, Max and Sum
decimal sum = workSheet["A2:A10"].Sum();
// Linq compatible
decimal max = workSheet["A2:A10"].Max(c => c.DecimalValue);
VB .NET Importation d'Excel dans une base de données SQL
UTILISATION D'IRONXL
Comment importer un fichier Excel dans une base de données SQL en VB .NET
Publié janvier 27, 2024
Partager:
Introduction
Les bases de données SQL et Excel sont deux outils d'administration et d'analyse efficaces, chacun disposant de fonctions et de capacités particulières.
Excel
Excel est un tableur populaire créé par Microsoft. Son interface conviviale et sa capacité à gérer différentes activités d'organisation, de calcul, d'analyse et de visualisation des données lui ont valu sa réputation. Les utilisateurs peuvent saisir des données dans les cellules de la feuille Excel disposées en lignes et en colonnes, effectuer des opérations mathématiques et produire des diagrammes, des graphiques et des tableaux croisés dynamiques pour résumer et analyser les données ou importer des données d'Excel. Excel est un outil largement utilisé par les particuliers, les entreprises et les organisations à de nombreuses fins, telles que l'analyse financière, la gestion des stocks, l'établissement de rapports et la budgétisation.
SQL
Les données structurées sont stockées, gérées et extraites à l'aide de bases de données compatibles avec le langage SQL(Langage de requête structuré). Ils reposent sur le modèle relationnel et sont constitués de tableaux avec des lignes et des colonnes. Les utilisateurs peuvent construire, modifier et interroger des bases de données à l'aide de commandes SQL et de bases de données SQL telles que MySQL, PostgreSQL, SQL Server et SQLite. Ces bases de données offrent de solides capacités de récupération et de manipulation des données, une grande évolutivité et une garantie d'intégrité.
Dans cet article, nous allons voir comment VB.NET importe des fichiers Excel dans la table de la base de données SQL Server sans utiliser le fournisseur Microsoft.ACE.OLEDB.12.0.
Comment utiliser VB.NET pour importer des fichiers Excel dans une base de données SQL
Créez un nouveau projet Visual Studio.
Installer la bibliothèque requise.
Nous pouvons maintenant importer un fichier Excel et le convertir en tableau de données ou récupérer des données.
Se connecter à la base de données SQL.
Enregistrez les données importées dans la table de la base de données.
Fermez la connexion SQL et éliminez l'objet.
Qu'est-ce qu'IronXL ?
Un puissant Framework .NET appeléIronXL a été créé pour faciliter le traitement des fichiers Excel écrits en C#, VB.NET, Visual Basic et autres langages .NET. Il est compatible avec les formats de fichiers XLS et XLSX. Cette bibliothèque permet aux développeurs d'écrire, de lire, d'éditer et de générer des feuilles de calcul Excel plus facilement et plus rapidement. Une vaste gamme d'outils et de fonctions est également disponible.
Les principales caractéristiques et capacités d'IronXL sont les suivantes :
Traitement des données : IronXL facilite la lecture, l'écriture et la manipulation des données dans les feuilles de calcul Excel. Un tableau à deux dimensions peut être utilisé pour récupérer les cellules, et les calculs, les formules et le formatage des données sont tous possibles.
Création et modification de fichiers Excel : Outre la création de nouveaux fichiers Excel et la modification de fichiers existants, les développeurs peuvent également ajouter, supprimer et gérer des feuilles de calcul. Ils peuvent également travailler avec de nombreux composants Excel.
IronXL peut être utilisé dans une série de scénarios d'application et est compatible avec plusieurs plateformes .NET, notamment Xamarin, .NET Core et .NET Framework, grâce à son interopérabilité multiplateforme.
Polyvalence et compatibilité : Il prend en charge à la fois l'ancien format XLS et le format plus moderne XLSX et est compatible avec plusieurs versions d'Excel.
Prise en charge des formats Excel anciens et modernes : Il peut prendre en charge les formats plus contemporains basés sur XML(XLSX, qui remonte à Excel 2007) et les formats de fichiers Excel plus traditionnels(XLS, qui remonte à Excel 97-2003).
Utilité : En proposant une API directe avec des propriétés et des fonctions faciles à comprendre, la bibliothèque rend les activités liées à Excel plus accessibles aux développeurs plus ou moins expérimentés.
Extraction et exportation de données : IronXL facilite l'extraction des données des fichiers Excel et l'exportation des données Excel vers plusieurs formats, ce qui simplifie l'interface avec les bases de données et autres systèmes.
Documentation et assistance : IronXL fournit une abondante documentation, des tutoriels et une assistance pour aider les développeurs à utiliser sa bibliothèque pour des tâches liées à Excel.
Automatisation et efficacité : En automatisant les tâches Excel, IronXL permet aux utilisateurs d'être plus productifs, de consacrer moins de temps au travail manuel et de développer des applications efficaces axées sur les données.
Intégration et personnalisation : Il facilite la création de rapports personnalisés ou de solutions basées sur les données en offrant la possibilité d'exporter les données Excel dans une variété de formats. Il fonctionne bien avec les bases de données et d'autres systèmes.
Le financement, l'analyse des données, l'établissement de rapports, la veille stratégique et le développement de logiciels ne sont que quelques-uns des nombreux domaines qui emploient IronXL. Il permet aux développeurs de travailler avec des fichiers Excel de manière programmatique et de produire des solutions fiables qui combinent l'intégration d'Excel et la manipulation de données. Cliquez surici pour en savoir plus.
Créer un nouveau projet Visual Studio
Il est facile de créer un projet de console Visual Studio. Pour créer une application console dans Visual Studio, procédez comme suit :
Lancer Visual Studio : Ouvrir Visual Studio(assurez-vous que Visual Studio est installé sur votre PC).
Démarrer un nouveau projet
Sélectionnez Fichier, puis Nouveau, puis Projet.
Sélectionnez votre langage de programmation préféré, tel que C#, dans le panneau gauche de la boîte "Créer un nouveau projet".
Ensuite, dans la liste des modèles de projet disponibles, choisissez "Console App " ou "Console App(.NET Core)" template.
Donnez un nom à votre projet en remplissant la section "Nom ".
Sélectionnez l'endroit où le projet doit être enregistré.
Pour démarrer un nouveau projet d'application Console, cliquez sur "Créer ".
Installation de la bibliothèque IronXL
Pour installer la bibliothèque IronXL, procédez comme suit :
Ouvrez la console de NuGet Package Manager en allant sur Outils > NuGet Package Manager > Console de gestion des paquets.
Utilisez la commande suivante pour installer la bibliothèque IronXL :
Install-Package IronXL.Excel
Vous pouvez également installer la bibliothèque IronXL à l'aide du gestionnaire de paquets NuGet. Il suffit de rechercher le paquet "IronXL" et de choisir dans la liste les paquets NuGet associés à IronXL que vous souhaitez télécharger.
IronXL pour importer et ajouter dans une base de données SQL
Ces procédures peuvent être utilisées pour importer des données d'un fichier Excel à l'aide d'IronXL et les ajouter ensuite à une base de données SQL à l'aide de VB.NET. Cet exemple montre comment utiliser IronXL pour lire un fichier Excel et insérer les données dans une base de données SQL Server.
Imports IronXL
Imports System.Data
Imports System.Data.SqlClient
Module Program
Sub Main(args As String())
Dim excelFilePath As String = "Demo.xlsx"
Dim connectionString As String = "Data Source=DESKTOP-QBIBUNV;Initial Catalog=Mohammed;Integrated Security=True;Encrypt=False"
' Load Excel file using IronXL
Dim workbook As WorkBook = WorkBook.Load(excelFilePath)
Dim worksheet As WorkSheet = workbook.DefaultWorkSheet
' Set up SQL connection
Using connection As New SqlConnection(connectionString)
connection.Open()
' Iterate through rows and insert data into SQL database
For Each row In worksheet.ToDataTable().AsEnumerable().ToList()
' Extract cell data
Dim cellData As List(Of String) = New List(Of String)()
For Each cell In row.ItemArray
cellData.Add(cell)
Next
' Insert data into SQL database
InsertDataIntoSQL(connection, cellData)
Next
End Using
End Sub
' Method to insert data into SQL database
Private Sub InsertDataIntoSQL(connection As SqlConnection, data As List(Of String))
' Define your SQL INSERT query
Dim sqlQuery As String = "INSERT INTO ExcelData (Name, Age) VALUES (@Value1, @Value2)"
' Create a SqlCommand object with parameters
Using command As New SqlCommand(sqlQuery, connection)
' Set parameters (adjust as per your column names and data)
command.Parameters.AddWithValue("@Value1", data(0))
command.Parameters.AddWithValue("@Value2", data(1))
' Execute the SQL command
command.ExecuteNonQuery()
End Using
End Sub
End Module
Imports IronXL
Imports System.Data
Imports System.Data.SqlClient
Module Program
Sub Main(args As String())
Dim excelFilePath As String = "Demo.xlsx"
Dim connectionString As String = "Data Source=DESKTOP-QBIBUNV;Initial Catalog=Mohammed;Integrated Security=True;Encrypt=False"
' Load Excel file using IronXL
Dim workbook As WorkBook = WorkBook.Load(excelFilePath)
Dim worksheet As WorkSheet = workbook.DefaultWorkSheet
' Set up SQL connection
Using connection As New SqlConnection(connectionString)
connection.Open()
' Iterate through rows and insert data into SQL database
For Each row In worksheet.ToDataTable().AsEnumerable().ToList()
' Extract cell data
Dim cellData As List(Of String) = New List(Of String)()
For Each cell In row.ItemArray
cellData.Add(cell)
Next
' Insert data into SQL database
InsertDataIntoSQL(connection, cellData)
Next
End Using
End Sub
' Method to insert data into SQL database
Private Sub InsertDataIntoSQL(connection As SqlConnection, data As List(Of String))
' Define your SQL INSERT query
Dim sqlQuery As String = "INSERT INTO ExcelData (Name, Age) VALUES (@Value1, @Value2)"
' Create a SqlCommand object with parameters
Using command As New SqlCommand(sqlQuery, connection)
' Set parameters (adjust as per your column names and data)
command.Parameters.AddWithValue("@Value1", data(0))
command.Parameters.AddWithValue("@Value2", data(1))
' Execute the SQL command
command.ExecuteNonQuery()
End Using
End Sub
End Module
VB.NET
Grâce à son API, IronXL propose une méthode pratique pour charger des fichiers Excel(WorkBook.Load) et de récupérer leur contenu, ce qui permet d'itérer à travers les lignes et les cellules(objets ExcelRow et ExcelCell).
Le programme lit les données du fichier Excel à l'aide d'IronXL, récupère les valeurs des cellules pour chaque ligne et les stocke dans des structures de données appropriées en vue d'un traitement ultérieur.
Ensuite, le programme se connecte à la base de données SQL Server en utilisant une chaîne de connexion et l'espace de noms System.Data.SqlClient. Des requêtes SQL INSERT sont ensuite préparées pour insérer les données Excel dans la table SQL correspondante. Le programme utilise des commandes SQL paramétrées(SqlCommand) pour insérer les données Excel dans la base de données SQL en faisant correspondre les valeurs des cellules récupérées aux paramètres de requête SQL appropriés et en exécutant la commande INSERT à l'aide de command.ExecuteNonQuery().
La bibliothèque IronXL, qui est une bibliothèque d'objets Excel, est largement utilisée par plusieurs secteurs, notamment le développement de logiciels, la finance, l'analyse de données et la création de rapports. Il s'agit d'un outil essentiel pour les entreprises et les développeurs qui cherchent à maximiser leurs opérations à l'aide d'Excel. IronXL permet de créer des applications dynamiques, centrées sur les données, qui gèrent de manière efficace et programmatique les fichiers Excel.
En résumé, l'utilisation d'IronXL for .NET dans une application VB.NET permet un transfert transparent des données des fichiers Excel vers les bases de données SQL, offrant ainsi efficacité et flexibilité dans la gestion des données sur les deux plates-formes. IronXL propose une édition communautaire gratuite avec des limitations pour une utilisation non commerciale. Les versions payantes, à partir de $749, peuvent être achetées par le biais de modèles d'abonnement ou de licences perpétuelles et offrent des caractéristiques supplémentaires, une assistance et des fonctionnalités complètes. Veuillez consulter le site officiel d'IronXLsite web pour obtenir des informations complètes et actualisées sur les licences. Pour plus d'informations sur les produits d'Iron Software, consultez le site suivantlien.
Avant de devenir ingénieur logiciel, Kannapat a obtenu un doctorat en ressources environnementales à l'université d'Hokkaido au Japon. Tout en poursuivant ses études, Kannapat est également devenu membre du Vehicle Robotics Laboratory, qui fait partie du Department of Bioproduction Engineering (département d'ingénierie de la bioproduction). En 2022, il a mis à profit ses compétences en C# pour rejoindre l'équipe d'ingénieurs d'Iron Software, où il se concentre sur IronPDF. Kannapat apprécie son travail car il apprend directement auprès du développeur qui écrit la majeure partie du code utilisé dans IronPDF. Outre l'apprentissage par les pairs, Kannapat apprécie l'aspect social du travail chez Iron Software. Lorsqu'il n'écrit pas de code ou de documentation, Kannapat peut généralement être trouvé en train de jouer sur sa PS5 ou de revoir The Last of Us.
< PRÉCÉDENT Comment convertir un fichier Excel en XML en C#
SUIVANT > Comment importer un fichier CSV dans une base de données en C# ?
Des millions d'ingénieurs dans le monde entier lui font confiance
Réservez une démo en direct gratuite
Réservez une démonstration personnelle de 30 minutes.
Pas de contrat, pas de détails de carte, pas d'engagements.
Voici ce à quoi vous pouvez vous attendre :
Une démonstration en direct de notre produit et de ses principales fonctionnalités
Obtenez des recommandations de fonctionnalités spécifiques au projet
Toutes vos questions trouvent réponse pour vous assurer de disposer de toutes les informations dont vous avez besoin. (Aucune obligation de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre gratuit Démonstration en direct
Fiable par plus de 2 millions d'ingénieurs dans le monde entier