在Server 2016/IIS 10下用ASP连接ACCESS数据库

服务器升级到Server 2016,有一些在旧平台上开发的web应用需要迁移过来。

其中有一个ASP+ACCESS开发的小应用,迁移到Server 2016后,访问时报告“ADODB.Connection 错误 '800a0e7a'”。

问题显而易见,是新的Server 2016上没有安装数据库驱动导致的。

这个web应用之前工作在Server 2008 R2上,也是x64的系统环境,看了一下conn.asp里面的连接字串是这么写的:

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.provider="microsoft.ACE.oledb.12.0;Jet OLEDB:Database Password="
ConnStr = Server.MapPath("" & "db.accdb" & "")
Conn.Opeo ConnStr

 microsoft.ACE.oledb.12.0 ,那么这应该是调用了“Microsoft Access Database Engine 2007”。

查了一下,Microsoft Access Database Engine已经有2016版了。下载地址如下:

https://www.microsoft.com/en-us/download/details.aspx?id=54920

安装后,修改连接字串,即可正常工作:

Conn.provider="microsoft.ACE.oledb.16.0;Jet OLEDB:Database Password="

注:IIS 10默认安装不包含ASP功能支持,添加功能角色时注意勾选。

==========sp1==========

在Server 2016上使用Access Database Engine2016可能出现各种奇怪的故障,如查询时间变慢、IIS进程崩溃等。

如果遇到这些问题,请使用ADE2010 x64版本。详见:https://blog.csdn.net/robur/article/details/82660017

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值