Я пытаюсь сохранить данные в базе данных sql из файла формата xls. Я попробовал приведенный ниже код, но он показывает ошибку, что внешняя таблица не в ожидаемом формате. Скажите, кто-нибудь поможет мне, как я могу сохранить данные из формата xls файл в базу данных?
code:
protected void Button1_Click(object sender, EventArgs e)
{
string sheet1 = "asdf";
string path = MapPath("~/dataWorldcup/asdf.xls");
OleDbConnection oconn1 = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=Excel 12.0;");
OleDbCommand ocmd = new OleDbCommand("select * from [" + sheet1 + "$]", oconn1);
SqlConnection sqlcon = new SqlConnection(ConfigurationManager.ConnectionStrings["consed"].ConnectionString);
oconn1.Open();
sqlcon.Open();
OleDbDataReader odr = ocmd.ExecuteReader();
SqlBulkCopy sqlBulk = new SqlBulkCopy(sqlcon);
sqlBulk.DestinationTableName = "[Table]";
sqlBulk.WriteToServer(odr);
sqlcon.Close();
oconn1.Close();
}
Ошибка:
Таблица базы данных:
файл excel: - asdf.xls
Может ли кто-нибудь помочь мне в этом? Это будет отличная помощь.
Моя первоначальная догадка заключается в том, что вы не используете правильную строку соединения для версии листа Excel, который у вас есть. Это мое предположение, потому что вы даже ничего не делаете, когда возникает ошибка, кроме попытки подключения к листу.
Попробуйте найти правильную строку подключения.
РЕДАКТИРОВАТЬ:
Попробуйте Excel 8.0; вместо Excel 12.0?