50分求 奇怪的ASP打开access产生ldb就不能访问的解决办法。

Derekwong 2009-10-24 01:58:47
今天把conn里面的MDB名字改了一下,也把对应的数据库名字改成了一样了。

结果网页就打不开,查看文件夹中多了一个 ldb文件。

又试着把数据库的名字改回以前的名字,把CONN也改了一下,一切正常。

又试着改了一下,不能访问,重新启动,还是不行。

这个是什么问题导致的。请大家帮忙。
...全文
117 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
toury 2009-10-24
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 derekwong 的回复:]
toury,谢谢,试了你给的代码,没如何提示,(1)数据库直接产生ldb文件,(2)锁死
[/Quote]
原因有2:
1)你测试的文件没有释放资源所以你看到的是直接产生ldb文件
2)什么叫锁死?页面不响应了吗?如果是的话,那只有一个原因:你的页面里还链接了其他文件,而其他文件里有链接原数据库的代码。如果不是,那是正常的。
----------------------------------------------------
最好把你测试页面的代码贴出来,免得猜谜
Derekwong 2009-10-24
  • 打赏
  • 举报
回复
toury,谢谢,试了你给的代码,没如何提示,数据库直接产生ldb文件,锁死。

改回原来的名字又可以,真是奇怪。

suxiuhai,谢谢,连接应该是没问题的,就是改个名字就锁死。
ayouori 2009-10-24
  • 打赏
  • 举报
回复
找一个字符串查找工具,在你的网站目录下查找包函数据库名称的字符串,找到后全部更改数据库名称,
不要用替换功能.
suxiuhai 2009-10-24
  • 打赏
  • 举报
回复
<!--#include file="inc/conn.asp" -->
<%
dim rs,sql
Set rs = Server.CreateObject("adodb.recordset")
sql="select * from [tablename]"
rs.open sql,conn,1,1
if not(rs.bof and rs.eof) then
response.Write("连接成功")
response.write(sql)

else
response.Write("连接失败")
response.write(sql)
end if
rs.close
set rs=nothing

%>

你在目录那新建个文件test.asp
把tablename改为你数据库里有记录的表名
测试下看连接是否成功。
如果成功的话,就不是你这个conn.asp文件的问题了。
toury 2009-10-24
  • 打赏
  • 举报
回复
汗~还是有错:
db=="/date/#Derek!aaa.mdb"
------>改为
db="/date/#Derek!aaa.mdb"
toury 2009-10-24
  • 打赏
  • 举报
回复
5楼错了,看这个:


<%
Dim connStr,conn,db,BackupName
db=="/date/#Derek!aaa.mdb"
BackupName="aaabk.asp"
connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(db)
set conn=server.CreateObject("adodb.connection")
conn.open connStr
if conn.state<>1 then
set conn=nothing
response.write"数据库连接错误!<br>"
response.write err.description'调试用,成功后删除
response.end
end if
%>
toury 2009-10-24
  • 打赏
  • 举报
回复

<%
Dim connStr,conn,db,BackupName
db=="/date/#Derek!aaa.mdb"
BackupName="aaabk.asp"
connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(db)
conn.open connStr
if conn.state<>1 then
set conn=nothing
response.write"数据库连接错误!<br>"
response.write err.description'调试用,成功后删除
response.end
end if
%>
Derekwong 2009-10-24
  • 打赏
  • 举报
回复
整个站都是我做的,就用了这一个连接,代码如下


<%
Dim conn,Dataname,path,db,BackupName
Dataname="#Derek!aaa.mdb"
path="/date/"
db=""&path&""&dataname&""
BackupName="aaabk.asp"
conn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath( ""&db&"")
%>


如果有相应的数据库资源没释放,为什么改回以前的名字又可以,换个名字就不行了。

我只修改了Dataname="#Derek!aaa.mdb"
toury 2009-10-24
  • 打赏
  • 举报
回复
1、关闭程序;
2、把ldb文件删除;
3、改数据库名;
4、改数据库连接相应的server.mapPath;
5、检查程序,网页加载完毕后,注意释放数据库资源
suxiuhai 2009-10-24
  • 打赏
  • 举报
回复
很多时候不只是对应一个conn文件~
要把所有的都更改下!
jixianhuhuan 2009-10-24
  • 打赏
  • 举报
回复
你是什么意思?名字为什么要改?改了不是找不到库了?你有2个库吗?

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧