当前位置:Gxlcms >
数据库问题 >
未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序
未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序
时间:2021-07-01 10:21:17
帮助过:28人阅读
connectionString =
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + allPath +
";Extended Properties=‘Excel 8.0;HDR=YES;IMEX=1‘";
OleDbConnection connection =
new OleDbConnection(connectionString);
connection.Open();
DataTable oleDbSchemaTable = connection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,
null);
connection.Close();
//默认读取第一sheet
OleDbDataAdapter adapter =
new OleDbDataAdapter(
"SELECT * FROM [" + oleDbSchemaTable.Rows[
0][
"TABLE_NAME"].ToString() +
"]"
, connectionString);
DataSet dataSet =
new DataSet();
adapter.Fill(dataSet, "ExcelInfo");
DataTable dt = dataSet.Tables[
0];
2.解决办法:
方法一:更改IIS设置,启用32位应用程序,这样就可以兼容32位了。
方法二:
第一步,先安装
Microsoft Access Database Engine 2010 Redistributable
http://www.microsoft.com/downloads/zh-cn/details.aspx?FamilyID=C06B8369-60DD-4B64-A44B-84B371EDE16D
个人感觉如果系统office应该就不用再装驱动了。
第二步 修改连接
原来连接 Provider=Microsoft.Jet.OLEDB.4.0;Data Source=1.xls;Extended Properties="Excel 8.0;HDR=YES;IMEX=1"
修改为:
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=1.xls;Extended Properties="Excel 12.0;HDR=YES;IMEX=1"
未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序
标签:div ring OLE 设置 捕获异常 64位 cti down database