当前位置 主页 > 服务器问题 > win服务器问题汇总 >

    WIN7/win2008 r2 X64系统IIS 7.5 ACCESS数据库连接故障解决方法

    栏目:win服务器问题汇总 时间:2019-11-26 15:20

    在WIN7 X64系统或其它WINDOWS X64系统的IIS,使用JET连接不上ACCESS数据,
    常见错误提示:

    ADODB.Connection 错误 '800a0e7a',未找到提供程序。该程序可能未正确安装。



    Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'
    [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序

    原因是没有64位系统的JET驱动。

    解决方法一:

    开始 – 运行 – 输入”cmd” ,键入以下命令启用IIS的32 位模式:
    (1)如果是IIS6
    cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
    (2)如果是IIS7:
    appcmd list apppool /xml | appcmd set apppool /in /enable32BitAppOnWin64:true

    注意:

    APPcmd.exe 位于 C:\Windows\System32\inetsrv 目录
    使用 Cd c:\Windows\System32\inetsrv 切换到该目录,
    如果不切换会提示APPcmd不是内部或外部命令,也不是可以运行的程序,或批处理文件。

    解决方法二:
    修改应用程序池的“高级设置”。

    打开IIS管理器,点击左边的“应用程序池”,在视图中右键DefaultAppPool或你网站的独立应用程序池名字,选择高级设置,修改如下图:




    把启用32位应用程序设为True.
     

    解记方法三:

    使用新版本的数据驱动

    下载安装:Microsoft Access Database Engine 2010 Redistributable for x64

    修改连接字符串:
    Provider=Microsoft.ACE.OLEDB.12.0;Data Source=;User ID=;Password=;
    Data Source\User ID\Password按照实际情况设置。

    但ACE和Jet的数据驱动是有差别的,经测试某些程序需要修改,但也不知道怎样改,这方法并不算好。

    推荐使用第二种方法,注意你的网站是否是独立的应用程序池,
    如果是,修改默认的应用程序池没有作用,需要修改该网站名称的应用程序池。