怎么在Asp.Net中利用oleDbConnection 连接Excel

这篇文章给大家介绍怎么在Asp.Net中利用oleDbConnection 连接Excel,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

Asp.Net(C#)使用oleDbConnection 连接Excel

怎么在Asp.Net中利用oleDbConnection 连接Excel

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:/MyExcel.xls;Extended Properties= "Excel 8.0;HDR=Yes;IMEX=1"

针对如果上连接字符串 对相关属性进行说明如下:"HDR=Yes;”指示第一行中包含列名,而不是数据,"IMEX=1;”通知驱动程序始终将“互混”数据列作为文本读取。Excel 8.0 针对Excel2000及以上版本,Excel5.0 针对Excel97。

usingSystem.Data.OleDb;
usingSystem.Data;

StringsConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;"+
"DataSource=c:/test.xls;"+
"ExtendedProperties=Excel8.0;";
OleDbConnectionobjConn=newOleDbConnection(sConnectionString);
objConn.Open();
OleDbCommandobjCmdSelect=newOleDbCommand("SELECT*FROM[sheet1]",objConn);
OleDbDataAdapterobjAdapter1=newOleDbDataAdapter();
objAdapter1.SelectCommand=objCmdSelect;
DataSetobjDataset1=newDataSet();
//将Excel中数据填充到数据集
objAdapter1.Fill(objDataset1,"XLData");
objConn.Close();

从上面可以看出,使用ADO.NET可将Excel当作普通数据库,使用SQL语句来操作。

通过ADO.NET获取Excel文件的各Sheet名称,可使用元数据方式:

StringsConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;"+
"DataSource=c:/test.xls;"+
"ExtendedProperties=Excel8.0;";
OleDbConnectioncn=newOleDbConnection(sConnectionString);
cn.Open();
DataTabletb=cn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,null);
foreach(DataRowrowintb.Rows)
{
//遍历弹出各Sheet的名称
MessageBox.Show(row["TABLE_NAME"]);
}

关于使用ADO.NET创建并写入Excel文件与普通数据库操作极为类似,参见以下代码:

StringsConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;"+
"DataSource=c:/test.xls;"+
"ExtendedProperties=Excel8.0;";
OleDbConnectioncn=newOleDbConnection(sConnectionString);
stringsqlCreate="CREATETABLETestSheet([ID]INTEGER,[Username]VarChar,[UserPwd]VarChar)";
OleDbCommandcmd=newOleDbCommand(sqlCreate,cn);
//创建Excel文件:C:/test.xls
cn.Open();
//创建TestSheet工作表
cmd.ExecuteNonQuery();
//添加数据
cmd.CommandText="INSERTINTOTestSheetVALUES(1,'elmer','password')";
cmd.ExecuteNonQuery();
//关闭连接
cn.Close();

关于怎么在Asp.Net中利用oleDbConnection 连接Excel就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

发布于 2021-03-26 01:50:54
收藏
分享
海报
0 条评论
168
上一篇:如何在易语言中使用取反命令 下一篇:如何在易语言中使用连续赋值命令
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码