位置: 编程技术 - 正文

access不能打开注册表关键字错误处理方法(80004005错误)(access不能打开数据库)

编辑:rootadmin

错误信息如下: ---------------------------------- Microsoft OLE DB Provider for ODBC Drivers 错误 ''''''''[Microsoft][ODBC Microsoft Access Driver]常见错误 不能打开注册表关键字 ''''Temporary (volatile) Jet DSN for process 0x Thread 0x DBC 0xfb Jet''''。 ----------------------------------

下面几个可能原因:1。微软已经不更新ODBC,需要改用JET的方式连接ACCESS数据库文件; 2。系统目录的权限发生的变更。 也有老帖子说什么原因是:“ACCESS数据库文件是ACCESS版本的”,这个无须考虑,我用的是ACCESS数据库。

对于第一个原因,原来的连接字串如下: --ODBC连接方式------------------------ mdbpath=server.MapPath("my.mdb.asp") CnnStr = "DBQ=" & mdbpath & ";DRIVER={Microsoft Access Driver (*.mdb)};uid=admin;pwd=" -------------------------------------

改用JET连接后连接字串为: ---JET连接方式--------------------- CnnStr = "Provider=Microsoft.Jet.OLEDB.4.0;User Id=admin;Data Source="& mdbpath &" '''';Password=luntanbbs" -------------------------------------

测试过后无效,虽然提示的错误信息有点不同: ---------------------------------- Microsoft JET Database Engine 错误 '''''''' 未指定的错误 ----------------------------------

最后检查第二个原因:系统目录权限不足。经询问,原来由于出于安全的考虑一同事把该服务器的WINNT目录设置为 Administrators、system “完全控制”,users 只读。 但是,按道理,这样的权限设置,ODBC的驱动程序处于 winntsystemodbcjt.dll 这个也是可读的,难道是因为缺少“执行”权限? 我把 winntsystem目录下所有以odbc开头的DLL文件全部授予“执行”权限,发现还是一样的错误信息。跟着我索性把整个 system 目录设成 everyone 可执行,可是一测试依然不行。 难道是还有其他文件被ODBC或JET调用但又不在这个system目录下且又没有得到充分授权而导致失败? 正在想的时候,蓦然瞥见 winnttemp 目录。嘿,我把 temp 目录设置成 everyone 可“写入”看看。

一测试,嘿,成了。使用ODBC连接方式的程序,成功的读取更新ACCESS数据库中的记录。

推荐整理分享access不能打开注册表关键字错误处理方法(80004005错误)(access不能打开数据库),希望有所帮助,仅作参考,欢迎阅读内容。

access不能打开注册表关键字错误处理方法(80004005错误)(access不能打开数据库)

文章相关热门搜索词:access打不开怎么办,用不了access,用不了access,用不了access,access无法打开,access2010打不开,access 打不开,用不了access,内容如对您有帮助,希望把文章链接给更多的朋友!

Access数据库不能写不能更新的解决方法 Access数据库不能写,造成这种问题的原因是Web共享文件夹在NTFS分区里,而IUSR_***(Internet来宾帐户)没有足够权限。解决方法:1.在文件夹选项里,将使用

获取Gridview中ButtonField的text属性 asp:BoundField用cell[2].text取到值。但asp:HyperLinkField和asp:ButtonField通过cell[0].Text和cell[].Text取的值都是""。应如何取到值呢?首先将ButtonField按钮的连接改为B

四种数据库随机获取条数据的方法 四种数据库随机获取条数据的方法SQLServer:SELECTTOP*FROMT_USERORDERBYNEWID()ORACLE:SELECT*FROM(SELECT*FROMT_USERORDERBYDBMS_RANDOM.RANDOM())WHERERONUM=MySQL:SELECT*FROMT_USERORDERBY

本文链接地址:https://www.jiuchutong.com/biancheng/319221.html 转载请保留说明!

上一篇:ACCESS数据库修改自动编号的ID值为零的方法分享(access数据库修改字段类型)

下一篇:Access数据库不能写不能更新的解决方法(access数据库不能存放什么数据)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络