I need to import data from Excel to Sql Server using ASP.NET. How can I do this?
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, insert
ing 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.
Besides using an ODBC data source, you can also to ask your user to export that Excel file to CSV and to import it manually.
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