Importer un fichier excel dans sql server 2005 dans asp.net en utilisant C# .NET

Je veux importer un fichier excel dans sql server 2005 dans asp.net en utilisant C#.

Le formulaire web peut avoir un bouton de navigation et il peut sélectionner le fichier excel à partir de n’importe quel emplacement (n’importe où dans l’ordinateur et n’importe quel nom de fichier excel) de l’ordinateur local et lorsque le fichier de données excel est sélectionné, le bouton de téléchargement télécharge ces données excel dans la base de données.

La base de données comporte trois champs, disons

  • int ID,
  • Chaîne du prénom,
  • Chaîne du nom.

et la feuille Excel a la même colonne.

J’ai besoin d’aide pour cela. (J’ai déjà des données dans cette table, si je télécharge les données de la feuille excel, est-ce que les données précédentes seront affectées ? Dans mon cas, cela ne devrait pas être le cas).

Je vous remercie de votre aide.

Le code suivant convertira les données d’Excel en dataset

Dim strConn As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" + path + ";" & _ "Extended Properties=""Excel 8.0;""" 
Dim objConn As OleDbConnection = New OleDb.OleDbConnection(strConn) objConn.Open() 
Dim dadptr As OleDbDataAdapter = New OleDbDataAdapter("Select " + nomColonne + " From [nomFeuille]", strConn) 
Dim ds As DataSet = New DataSet dadptr.Fill(ds, "Table1")

Il suffit de quelques lignes de code pour transférer les données de la feuille de calcul Excel dans la table de la base de données du serveur SQL :

// Chaîne de connexion au classeur Excel
string excelConnectionString = @"Provider=Microsoft .Jet.OLEDB.4.0;Data Source=Book1.xls;Extended Properties=""Excel 8.0;HDR=YES;""";

// Créer une connexion au classeur Excel
using (OleDbConnection cx = new OleDbConnection(excelConnectionString))
{
   OleDbCommand cmd = new OleDbCommand ("Select ID,Data FROM [Data$]", cx);

   cx.Open();

   // Créer un DbDataReader pour une feuille de calcul de données
   using (DbDataReader dr = cmd.ExecuteReader())
   {
      // Chaîne de connexion au serveur SQL
      string sqlConnectionString = "Data Source=.; Initial Catalog=Test;Integrated Security=True";

      // Copie en bloc vers SQL Server
      using (SqlBulkCopy cp = new SqlBulkCopy(sqlConnectionString))
      {
         cp.DestinationTableName = "Exemple";
         cp.WriteToServer(dr);
      }
   }
}

vous pouvez utiliser le package DTS pour importer des données d’excel vers sql et vice versa

Comment importer des données de la feuille excel vers le serveur SQL ?

Note : - La feuille doit être exactement la même que la table dans laquelle vous importez les données.

Séquence:

Étape 1) Dans le menu Outils, sélectionnez Run a Wizard.
Étape 2) Cliquez sur Data Transformation Services.
Étape 3) Cliquez sur DTS Import Wizard. Vous verrez un assistant d’importation/exportation. Cliquez sur « Suivant »
Étape 4) Choisissez une Source de données dans la liste déroulante. Ici, j’ai choisi Microsoft Excel 5.0
Étape 5) Cliquez ensuite sur le bouton Parcourir et choisissez votre feuille Excel à importer et cliquez sur Suivant.
Étape 6) Choisissez ensuite Destination, Serveur. Choisissez l’option Utiliser l’authentification du serveur SQl.
Saisir le nom d’utilisateur et le mot de passe. Sélectionnez ensuite Base de données
Étape 7) Cliquez sur Suivant. Choisissez l’option Copier les tables et les vues de la base de données source et cliquez sur Suivant.
Étape 8) Vous verrez une liste de feuilles disponibles de votre feuille sélectionnée à importer. choisissez feuilles à importer. (gardez à l’esprit que les feuilles doivent être formatées de la même manière que les tables. vous pouvez également créer une nouvelle table).
Étape 9) Cliquez sur Champ de destination et choisissez une table dans laquelle vous voulez importer les données.
Étape 10) Cliquez sur le bouton Transformer et sélectionnez l’option appropriée. Si vous n’avez pas sélectionné de table à l’étape précédente, l’option par défaut créer une nouvelle table s’affichera.
Étape 11) Cliquez sur suivant et choisissez le moment où importer et cliquez sur terminer. Les données se trouvent dans votre tableau.