I need to import data from Excel to Sql Server using ASP.NET. How can I do this?
-
2Does it need to be done through ASP.net? If it's a once-off import, you could use the DTS wizard.mopoke– mopoke2009-12-28 08:42:46 +00:00Commented Dec 28, 2009 at 8:42
-
Through Asp.net code.I need the proper code.Nandini– Nandini2009-12-28 08:47:26 +00:00Commented Dec 28, 2009 at 8:47
4 Answers
You can use ADO.net OLEDB data source. You can fetch records as you normally do for MS Access. Have a look at the example..
public static DataTable SelectAll()
{
string conString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + @"\YourExcellfile.xls;Extended Properties=""Excel 8.0;HDR=Yes"";";
OleDbConnection oleConnection = new OleDbConnection(conString);
OleDbCommand oleCommand = new OleDbCommand("select * from [YourSheet1$]", oleConnection);
OleDbDataAdapter adapter = new OleDbDataAdapter(oleCommand);
oleConnection.Open();
DataTable dt = new DataTable();
adapter.Fill(dt);
oleConnection.Close();
return dt;
}
After the import you can pick the data from the data table and perform the insert operation using ADO.net Sql operation
1 Comment
I assume you want your users to upload an Excel document, which then has to be imported into SQL server. If so, you can either try some third-party library to open xls file and read data on a row-by-row basis, inserting it into an appropriate table or install Excel itself on a web server (not a good idea, though) and use it as an ODBC data source.