zoukankan      html  css  js  c++  java
  • 2017-02-23 错误信息:未在本地计算机上注册“Microsoft.ACE.oledb.12.0”提供程序。

    问题如题,解决办法:

    http://download.microsoft.com/download/7/0/3/703ffbcb-dc0c-4e19-b0da-1463960fdcdb/AccessDatabaseEngine.exe下载。

    然后安装就行了。

    这个错误经常在进行Excel读取操作时遇到,这是由于默认安装的Office中缺少AccessDatabase引擎,关于AccessDatabase引擎的介绍:

    Microsoft Access Database Engine 2010 也称Microsoft Access 2010 数据库引擎可再发行程序包,该程序用于帮助在 2010 Microsoft Office System 文件与非 Microsoft Office 应用程序之间传输数据。 此下载将安装一系列组件,帮助在现有的 Microsoft Office 文件(例如 Microsoft Office Access 2010(*.mdb 和 *.accdb)文件和 Microsoft Office Excel 2010(*.xls、*.xlsx 和 *.xlsb)文件)与其他数据源(例如 Microsoft SQL Server)之间传输数据。还支持与现有文本文件建立连接。 此外,还会安装 ODBC 和 OLEDB 驱动程序,供应用程序开发人员在开发与 Office 文件格式连接的应用程序时使用。

    另外附上.net中关于连接Excel的连接字符串:

    string strConn = "Provider=Microsoft.Ace.OleDb.12.0;Data Source=" + Excel全路径+";Extended Properties='Excel 12.0;HDR=" + isTrue + ";IMEX=1;'"; 



    这里的isTrue当为True时,表示Excel中第一行为表头,数据从第二行开始,反之从第一行开始.

    如何使用:

    DataSet ds = new DataSet();
    using (OleDbConnection conn = new OleDbConnection(strConn))
    {
          conn.Open();
          string strSql = string.Format("select * from [{0}$]", sheetName);//sheetName为excel中sheet表名。
          using (OleDbDataAdapter myCommand = new OleDbDataAdapter(strSql, conn))
          {
                myCommand.Fill(ds, sheetName);
          }
    }
    System.Data.DataTable dt = new System.Data.DataTable();
    dt = ds.Tables[0].Copy();
    return dt;
  • 相关阅读:
    django初识
    django前奏
    前端之bootstrap
    前端之jQuery
    前端基础之BOM和DOM操作
    前端之js
    前端之css(二)
    前端之css(一)
    html之form表单
    前端之html
  • 原文地址:https://www.cnblogs.com/Allen0910/p/6506241.html
Copyright © 2011-2022 走看看