1/5 (6 avis)
Vue 22 473 fois - Téléchargée 1 303 fois
using System; using System.Data.OleDb; using System.Data.SqlClient; namespace BulkCopy { class Program { static void Main(string[] args) { // La chaine de connexion au fichier excel (changer DataSource) string excelConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Classeur1.xls;Extended Properties=""Excel 8.0;HDR=YES;"""; // La chaine de connexion au sgbd string sqlConnectionString = "Data Source=localhost;Initial Catalog=TestDB;Integrated Security=True"; // On crée la connexion au classeur excel using (OleDbConnection connection = new OleDbConnection(excelConnectionString)) { // Changer les champes et le nom de la feuilles en gardant [$] OleDbCommand command = new OleDbCommand("Select ID, Libelle FROM [Feuil1$]", connection); connection.Open(); // On execute la commande using (OleDbDataReader reader = command.ExecuteReader()) { // Et on fait un bulk copy vers la table sql using (SqlBulkCopy bulkCopy = new SqlBulkCopy(sqlConnectionString)) { bulkCopy.DestinationTableName = "TestTable"; bulkCopy.WriteToServer(reader); } } } } } }
7 mai 2010 à 11:05
7 mai 2010 à 09:44
votre code m a beaucoup aidé
un grand merci
22 avril 2010 à 03:57
Moi aussi ça me donne une erreur le voilà "Le format de la chaîne d'entrée est incorrect"
il me le donne dans la ligne bluckcopy.WriteToServer(reader)
sachant que j'ai utilisé ce code en asp.net
alors qu'est ce que je dois faire????
3 nov. 2009 à 12:31
Mes colonnes de table sont de type nvarchar(10) ou nvarchar(100) et float.
Une exception se produit, me disant IMPOSSIBLE DE CONVERTIR LE TYPE STRING DE LA SOURCE DE DONNEES EN NVARCHAR DE LA DESTINATION.
19 juil. 2007 à 20:20
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.