问题在于没有正确使用数据库连接代码
一般只要使用标准数据库连接就可以了.
标准代码近似如下:
程序代码
Provider (0x80004005)未指定的错误的解决方法分类:aspaccess数据库开始可以连接成功,但提交数据出现"Provider (0x80004005)未指定的错误",数据库连接出错,刷新页面无效。
原数据库连接语句为:
Dim MM_sb_STRING
MM_sb_STRING = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=j:/sb/database/sb.mdb"
改为:
Dim MM_sb_STRING
MM_sb_STRING = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=j:/sb/database/sb.mdb"
问题解决。
重点是:
HTTP 错误 500.100 - 内部服务器错误 - ASP 错误
Internet 信息服务 错误类型:
Provider (0x80004005)
未指定的错误
出现“Microsoft OLE DB Provider for ODBC Drivers (0x80004005)”错误 !
麻烦的问题,如果你是个人站长,你一定对此深恶痛绝! 如果服务器是你自己的机器,只要重新启动计算机,问题可以排除,如果服务器你控制不了,只能联系服务器供应商,让他帮助你把服务器重新启动一下.
但更多的时候,你发现了这个问题,但是联系不到人! 真头痛! 怎么办,有办法!不用联系服务器供应商!
问题产生的主要原因:
一般这个问题的原因是数据库文件不可访问的时候(数据库被独享方式打开了,数据库文件被你在更新文件的时候删除掉了,数据库文件暂时改名了),而此时有人访问了带数据库连接的页面!此时iis服务器将报错!此时报错是合情合理,关键是当你恢复了数据库文件,access数据库文件正常之后,系统仍然报错,如果你不启动系统,将一直报错!"Provider (0x80004005) 未指定的错误 !!"
解决办法:
如果你在用的连接字符串是这种形式
strConnString="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("....")
那么你把它修改成
strConnString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("......")
就可以化解以上问题