Microsoft JET Database Engine (0x80004005) 未指定的错误的解决办法
一般情况下asp可以正常运行,但只要连接数据库就提示,Microsoft JET Database Engine 错误
'80004005',我的电脑因为用批处理清理文件,所以不能运行了, 只
1.查看数据库连接语句没有发现错误;
2.查看文件夹的权限已经全部给了everyone;
3.打开数据库的同时,系统会在临时文件夹 %SystemRoot%/temp/ 下创建临时文件,而 %
SystemRoot%/temp/ 的权限不够
解决:%SystemRoot%/temp/ 的权限加上(IUSER_电脑名的读写)
更多内容参考: hi.baidu/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  dataIntoSqlSer
ver_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  ateobject("tion") 
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  f 
'取出最大值 
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 
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> 
<% 
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设置驱动程序吗? 
zhanghongwen(流氓蚊子)在吗? 问题点数:80、回复次数:4Top
1 楼VeryOldMan(无头苍蝇(ishi))回复于 2006-01-27 14:53:46 得分
80myConn_Xsl="Provider=Microsoft.Jet.OLEDB.4.0;Data  Source="  &  Server.MapPath
("/yourexcel.xls")  _ 
&  ";Extended  Properties=""Excel  8.0;HDR=Yes;"";"   
SQL  Command:    "Select  *  From  [yourSheetname$]" 
在我自己的网站:ishi上测试通过!Top
2 楼zcxc(知春小草)回复于 2006-02-05 14:18:59 得分 0 还是不行。 
Microsoft.Jet.OLEDB.4.0在服务器上需要配置吗?Top
3 楼zcxc(知春小草)回复于 2006-02-05 18:36:27 得分 0 郁闷!!! 
请高手相助!!! 
我服务器配置为windows  server  2000,iis  5.0,sql  server  2000。 
用myConn_Xsl="Provider=Microsoft.Jet.OLEDB.4.0;Data  Source="  &  strName  & 
";Extended  Properties=Excel  8.0"   
或myConn_Xsl="Provider=Microsoft.Jet.OLEDB.4.0;Data  Source="  &  Server.MapPath
("strName  ")  _ 
&  ";Extended  Properties=""Excel  8.0;HDR=Yes;"";"  语句 
打开该连接时出现错误: 
Microsoft  Jet  Database  Engine(0x80004005) 
/../../aa.asp  xx行 
用myconn_Xsl="driver={microsoft  excel  driver(*.xls)};dbq="&server.mappath
("strName") 
来连接时打开则出现错误: 
microsoft  ole  db  provider  for  odbc  drivers(0x80004005) 
/../../aa.asp  xx行 
请问: 
用myconn_Xsl="driver={microsoft  excel  driver(*.xls)};dbq="&server.mappath
("strName")语句来连接时,服务器该如何配置? 
用myConn_Xsl="Provider=Microsoft.Jet.OLEDB.4.0;Data  Source="  &  strName  & 
";Extended  Properties=Excel  8.0"   
或myConn_Xsl="Provider=Microsoft.Jet.OLEDB.4.0;Data  Source="  &  Server.MapPath
("strName  ")  _ 
&  ";Extended  Properties=""Excel  8.0;HDR=Yes;"";"   
来连接,服务器又该如何配置? 
出现上述问题,是什么
原因?是服务器缺少什么配置或其他什么的? 
请高手指点一下。 
Top

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。