2013-05-10 4 views
0

Я намерен скопировать данные Excel в SQL Server Compact Edition.C# BulkCopy с SQL Server Compact Edition, возможно ли это?

Я прочитал разницу между SQL Server Compact и SQL Server с here, но не смог найти его.

Кроме того, знайте, что конструктор SqlBulkCopy принимает параметр SqlConnection, а не SqlCeConnection.

Вот мой код:

public void importDataFromExcel(string excelFilePath) 
{ 
     string sSQLTable = "Inflations"; 
     string myExcelDataQuery = "Select CUSIP,FM,TNT,CPI_INDEX from [Sheet1$]"; 
     string sExcelConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + excelFilePath + ";Extended Properties=" + "\"Excel 8.0;HDR=YES;\""; 
     string sSqlConnectionString = "Data Source=C:\\Users\\abc\\Documents\\datafile.sdf;Password=12345;"; 

     OleDbConnection OleDbConn = new OleDbConnection(sExcelConnectionString); 
     OleDbCommand OleDbCmd = new OleDbCommand(myExcelDataQuery, OleDbConn); 
     OleDbConn.Open(); 
     OleDbDataReader dr = OleDbCmd.ExecuteReader(); 

     SqlBulkCopy bulkCopy = new SqlBulkCopy(sSqlConnectionString); 
     bulkCopy.DestinationTableName = sSQLTable; 

     while (dr.Read()) 
     { 
      bulkCopy.WriteToServer(dr); 
     } 
     OleDbConn.Close(); 
} 

ответ

0

Я думаю this нить связана с вашей проблемой. Вы также можете посмотреть на library, предложенный для использования также в этом разговоре.

+0

спасибо г-н Зак! – jaczjill

1

Вы можете использовать мою библиотеку SqlCeBulkCopy, доступны через NuGet для SQL CE 4.0, или в противном случае доступны здесь: https://sqlcebulkcopy.codeplex.com/

+0

Благодарим вас за библиотеку! – jaczjill

Смежные вопросы