一般情况下asp可以正常运行,但只要连接数据库就提示,Microsoft JET Database Engine 错误

'80004005',我的电脑因为用批处理清理文件,所以不能运行了, 只
1.查看数据库连接语句没有发现错误;
2.查看文件夹的权限已经全部给了everyone;
3.打开数据库的同时,系统会在临时文件夹 %SystemRoot%/temp/ 下创建临时文件,而 %

SystemRoot%/temp/ 的权限不够
解决:%SystemRoot%/temp/ 的权限加上(IUSER_电脑名的读写)

更多内容参考: http://hi.baidu.com/cfscc


2、如果一般未指定的错误,还有个办法,先
其实只要很简单的几步。:
开始。。。运行。。。regsvr32 jscript.dll
开始。。。运行。。。regsvr32 vbscript.dll
开始。。。运行。。。iisreset

Microsoft JET Database Engine (0x80004005)未指定的错误解决
1、系统可能没有注册msjetoledb40.dll,解决办法是
   点 开始--->运行, 输入 regsvr32 msjetoledb40.dll, 回车即可;

2、数据库所在文件夹权限
   打开办法是:打开我的电脑,然后点菜单上的“文件夹选项”--->查看,然后把“使用简单文

件夹共享(推荐)”前面的钩去掉,然后点“确认”;接下来回到需要打开权限的文件夹(数据库存

放的文件夹),右键---> 属性--->安全,然后点“添加”--->"高级"--->立即查找--->然后在下面

的地方选择“everyone”--->确定--->点刚才加入的"everyone",然后在下面的大框编辑everyone

权限为完全控制,保存即可。


3、需要打开guest用户
   打开方法:我的电脑--->控制面板--->管理工具---->计算机管理--->本地用户和组---用户---

找到"guest",双击,然后把弹出来的狂上的“帐户已停用”前的钩去掉,保存即可。


4、temp(临时文件夹)权限
   打开办法:windows--->temp,单击右键选择-属性,你就会看到一个叫做“安全”的选项,添

加一个everyone,权限设置为完全控制,再将你正在使用windows的用户也设置为完全控制.(件夹权


   打开办法是:打开我的电脑,然后点菜单上的“文件夹选项”--->查看,然后把“使用简单文

件夹共享(推荐)”前面的钩去掉,然后点“确认”;接下来回到需要打开权限的文件夹(数据库存

放的文件夹),右键---> 属性--->安全,然后点“添加”--->"高级"--->立即查找--->然后在下面

的地方选择“everyone”--->确定--->点刚才加入的"everyone",然后在下面的大框编辑everyone

权限为完全控制,保存即可。


本人要用ASP批量导入excel数据到sql数据库去,借用了zhanghongwen(流氓蚊子)   的代码,如下

:  
...  
...  
...  
<%  
server.scripttimeout=100000000  
sub   dataIntoSqlServer_ceritificate(strFileName,strSheetName,myConn)  
          '定义  
          dim   myConnection  
          dim   strName  
          dim   rsXsl,rsSql  
          dim   str_Xsl,str_Sql  
          dim   myConn_Xsl  
          dim   cmd  
          dim   i,j  
          dim   maxId  
   
          strName=strFileName    
          set   myConnection=server.createobject("adodb.connection")  
          set   rsXsl=Server.Createobject("ADODB.Recordset")  
          set   rsSql=Server.CreateObject("ADODB.Recordset")  
          set   cmd=Server.CreateObject("ADODB.Command")  
cmd.ActiveConnection=myConn  
   
   
     
          myConn_Xsl="Provider=Microsoft.Jet.OLEDB.4.0;Data   Source="   &   strName  

&   ";Extended   Properties=Excel   8.0"    
   
     
        '打开连接  
          myConnection.open   myConn_Xsl  
     
          '打开表    
          str_Xsl="select   *   from   ["&   strSheetName   &"$]"  
          rsXsl.open   str_Xsl,myConnection,1,1    
j=1  
          Do   While   not   rsXsl.eof  
          '取出最大值  
          str_Sql="select   Max(id)   as   maxId   from   fubiao"  
          rsSql.open   str_Sql,myConn,1,3  
          If   Not   rsSql.Eof   Then  
                If   not   isNull(rsSql("maxId"))   Then  
                      maxId=Clng(rsSql("maxId"))+1  
          Else  
                maxId=1  
          End   if  
          else  
                maxId=1  
          End   if  
          rsSql.close'//关闭对象  
'加入数据库  
str_Sql="insert   into   fubiao   values("&maxId&",'"&rsXsl(1)&"','"&rsXsl(3)

&"','"&rsXsl(4)&"','"&rsXsl(5)&"','"&rsXsl(6)&"','"&rsXsl(7)&"','"&rsXsl(8)

&"','"&rsXsl(9)&"','"&rsXsl(10)&"','"&rsXsl(11)&"','"&rsXsl(12)&"','"&rsXsl(13)

&"','"&rsXsl(14)&"','"&rsXsl(15)&"','"&rsXsl(16)&"','"&rsXsl(17)&"','"&rsXsl(18)

&"','"&rsXsl(19)&"','"&rsXsl(20)&"','"&rsXsl(21)&"','"&rsXsl(22)&"','"&rsXsl(23)

&"','"&rsXsl(24)&"','"&rsXsl(25)&"','"&rsXsl(26)&"','"&rsXsl(27)&"')"    
          cmd.CommandText=str_Sql  
          cmd.Execute()                                                
                         

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

'''  
                    j=j+1  
          rsXsl.movenext    
          Loop  
   
          response.write   "共导入<font   color='red'>"   &   j-1   &   "</font>条记录

.<br/>"  
          response.write   "<a   href=javascript:history.back()>确定</a>"    
          set   rsXsl=nothing    
          set   rsSql=nothing  
          set   myconnection=nothing    
          set   cmd=nothing    
end   sub  
...  
...  
...  
file1=request.form("filename2")  
strtj=mid(request.form("filename2"),instrrev(file1,"\")+1,(instrrev(file1,".")-

instrrev(file1,"\")-1))    
if   file1=""   then  
    response.write   "请选择您要导入的Excel表!<p></p>"      
%>  
<a   href=javascript:history.back()>上一页</a>  
<%  
          response.end  
        end   if  
myconn="DRIVER={SQL   SERVER};SERVER=(local);uid=sa;pwd=sa;DATABASE=qjgsj_data"  
call   dataIntoSqlServer_ceritificate     file1,""&strtj&"",myconn  
...  
...  
%>  
在打开连接时:  
myConnection.open   myConn_Xsl  
   
出现:HTTP 500.100_内部服务器错误_ASP错误  
错误类型:  
Microsoft   Jet   Database   Engine(0x80004005)  
\..\..\aa.asp   xx行  
是什么问题呢?  
此连接句有问题吗?  
        myConn_Xsl="Provider=Microsoft.Jet.OLEDB.4.0;Data   Source="   &   strName   &

";Extended   Properties=Excel   8.0"    
   
我服务器系统DSN已给SQL数据库建立了数据源,用ASP批量导入EXCEL数据,还需在系统DSN给

EXCEL设置驱动程序吗? 

posted on 2011-07-20 11:03  伤寒泪  阅读(9529)  评论(0编辑  收藏  举报