青海网站建设、网络推广最好的公司--您身边的网站建设专家,马上拿起电话,联系我们:0971-8235355   
青海西宁网站建设、网站制作公司-西宁威势电子信息服务有限公司 首页 |  公司简介 |  网站建设 |  网络推广 |  空间租用 |  域名注册 |  企业邮局 |  网络安全 |  网站编程 |  客服中心 |  联系我们 |  人才招聘
 
西宁威势最新网站制做案例展示
Lastest Project
 
西宁网站建设  
当前位置为:首页 >> 数据库 >> 正文  
[原创]Microsoft JET Database Engine 错误 '80004005' 不可识别的数据库格式 解决方法

文章来源: 西宁威势电子信息服务有限公司     发布时间:2010-7-30    浏览次数:11121    tags:ACCESS不可识别的数据库格式

本文章出自:西宁威势电子信息服务有限公司 [原创]

特别提示:原创文件,转载请注明出处:http://www.qhwins.com/ShowNews/?19-201073019312375408.html

    本人在上传WEB ACCESS数据库文件时,上传了一半暂停了一下,然后又重新上传,传上去以后发现网站无法正常打开。并报“Microsoft JET Database Engine 错误 '80004005' 不可识别的数据库格式”这样的错误。看样子是数据库文件损坏了,但是本地数据库文件可以正常打开,于是上服务器把文件删除了,重新从头到尾传一个新的上去试试,结果依然报同样的错误。很郁闷。因为我将数据库文件的后辍名改为SYS了,这样可以避免下载,会不会是这个原因引起的呢/?于是我百度又狗狗,发现有人遇到与我一样的问题,它分析是因为杀毒软件之类的对上传的数据库文件做了一些“手脚 ”,按作者的意思把文件后辍改成MDB后上传,问题解决,在留言回复中也看到确实有好多人通过这样的方法解决了问题。可是轮到我头上就不行了,看来今天RP极差!

    按理来说'80004005'这个错误是权限引起的错误提示,可是后面却根一个不可识别的数据库格式,这样的提示真的会让人很郁闷的。于是我就思考,会不会是和NTFS文件格式有关呢?因为我为了网站数据库安全,只给了DATABASE目录IIS匿名用户权限、SYSTEM权限和ADMINISTRATOR权限的,其它用户我是没给权限的,这样就会导致一个问题(我是这样思考的,不对的地方大家指正一下),就是我在上传的时候文件是以SYSTEM权限上传的,而IIS匿名用户要访问这个由SYSTEM权限创建的文件,它是如何继承权限的呢?

      为了搞清楚这个问题,我们先思考以下情况:我们要是在本地新建一个文件,当我们查看这个文件的安全属性时我们会看到有好多用户组,比如USERS\everyone等用户或组,其中有两个组是这样的名字,“CREATOR GROUP”、“CREATOR OWNER”。翻译成中文就是“创建组”和“创建的拥有者”,可见WINDOWS在创建文件的时候,默认还偷偷的记住了这个文件的创建是谁,以便更好的控制权限分配。一般我们都在本地电脑操作,我们在本地创建的文件,一般创建者都是管理员组的用户,如administrator用户,而我在远程创建的文件是以system权限上传创建上去的,我想正是这个原因,才导致这个文件的访问权限不能正常的被IIS匿名用户继承,所以才会出现上述的错误提示。有了这个思路,我就在服务器上给存放数据库的DATABASE目录加以everyone用户任意权限,即所有权限,这样做的目的是因为IIS匿名用户其实也是属于everyone里面的,everyone翻译成中文就是每个人嘛!之所以加这样的权限,就是因为想让IIS匿名用户继承到SYSTEM用户创建的文件的相关权限,比如读权限,或是其它WINDOWS系统隐藏的权限(这句话有点表述不清楚,大家慢慢理解)。做好权限后,我重新上传一个数据库文件上去,让这个文件的“windows隐藏控制权限”或其它权限继承给IIS匿名用户,然后我又重新把database目录的多余权限删除(什么是多余权限?当然是everyone权限了!)重新访问网站,不出意料,果然正常了,哈哈,看来WINDOWS系统的权限远远比我们想像的要复杂,它控制文件权限时,一定把一些信息在文件创建的时候写到NTFS格式中进去了。

另外给出网上搜索到的,其它兄弟的解决方法,以供大家参考

以下是引用片段:
因需要,我今天在空间上把本公司网站asp文件重新上传后,运行出现

Microsoft JET Database Engine 错误 '80004005'

不可识别的数据库格式 'E:\hosting\wwwroot\ ......\htdocs\...\data\db.mdb'。


           从网上查了解决的办法,操作后,没有解决。

           突然,发现空间有一个解琐数据库文件(da.ldb).把它删去,重新上传了数据库进行覆盖,还是不行。

         最后,把空间的数据库删去,重新上传,问题解决!

 

以下是引用片段:

  1、将数据库下载下来,重新打开优化另存为,然后上传。遇见这样的问题通常是你的数据库出现asa文件损坏问题,以上是解决方案一。

2、我测试的几个空间都是Windows 2003 server版本,估计上传ASP文件时,服务器系统对文件进行了病毒检测,甚至追加了什么代码;数据库文件不是文本文件,当然不能随便写东西了,因此文件格式被破坏了! 

因此,大家在调试程序时,务必留意这个情况;如果遇到了数据库上传后不能识别的,可以先将数据库以本来的文件格式MDB上传,然后通过FTP软件改名,这样就不会出问题了。


上一篇:SQL SERVER数据库开发之存储过程应用
下一篇:没有下一篇
评论列表
正在加载评论……
  
评论   
呢  称:
验证码: 若看不清请点击更换!
内  容:
 
 
  在线洽谈咨询:
点击这里,在线洽谈   点击这里,在线洽谈   点击这里,在线洽谈
与我交谈  与我交谈 与我交谈
乘车路线    汇款方式   加盟合作  人才招聘  
公司地址:青海省西宁市西关大街73号(三二四部队招行所四楼)     青ICP备13000578号-1 公安机关备案号:63010402000123    
QQ:147399120    mail:lostlove000@163.com    电话:09718235355 13897410341    WEB-FAX:1183309-7112964    MSN:cmdshell@hotmail.cn 邮编:810000
© Copyright( 2008-2009) QhWins.Com All Rights Reserved    版权所有:西宁威势电子信息服务有限公司 未经书面制授权,请勿随意转载!
业务:青海网站制做青海网站建设青海网页设计西宁网站制做西宁网站建设青海域名注册青海网络推广青海网站推广青海空间租用青海软件开发网站安全网络安全