在线急等,c#如何用操作数据库的模式来操作excel, 求大神指点~
本帖最后由 xiaoao314224236 于 2013-12-27 09:56:41 编辑
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + strExcelFileName + ";" + "Extended Properties='Excel 8.0;HDR=NO;IMEX=1';";
//Sql语句
string strExcel = "select * from [sheet1$]";
//定义存放的数据表
DataSet ds = new DataSet();
//连接数据源
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
//适配到数据源
OleDbDataAdapter adapter = new OleDbDataAdapter(strExcel, strConn);
adapter.Fill(ds, strSheetName);
// ds.Tables[strSheetName];
DataTable KK = ds.Tables[strSheetName];
string ss = "";
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
for (int j = 0; j < ds.Tables[0].Columns.Count;j++ )
{
ss += ds.Tables[0].Rows[i][j].ToString() + " ";
}
}
ds.Tables[0].Rows[0][0] = 100;
// da.Update(ds, Table_name);
[color=#FF6600] adapter.Update(ds, strSheetName);
更新其值的时候会报错(当传递具有已修改行的 DataRow 集合时,更新要求有效的 UpdateCommand)
conn.Close();
return ds.Tables[strSheetName];
网上有的说是因为主键原因,但是EXCEL 没有主键,据我所知的确可以用这种方式去做的,求大神指点