当前位置: 首页 > 图文教程 > 网络编程 > ASP > Asp 操作Access数据库时出现死锁.ldb的解决方法

ASP
asp搜索两个以上的词的原理
如何使用花生壳?
asp汉字转换成汉语拼音代码
asp程序实现伪静态的代码
asp处理xml数据的发送、接收类
ASP中使用jmail发送邮件的函数
asp中获取字符串中的时间字符串
ASP按照字数限制自动截取标题内容
asp中将内容生成word文档的函数
用ASP自动清空IE缓存里的内容
asp检测conn.execute是否执行成功的函数
自动获取当前页面URL的ASP函数
ASP采集中获取网页内所需的html代码
asp图片采集并且本地重命名保存的函数
如何使用asp去字符串中的超链接
asp网站通过限制请求防止被采集的函数
asp利用正则去掉字符串中所有html内容
用ASP取出HTML里面的图片地址的函数
fso实现整个文件夹内容的复制到另一个文件夹中
适合所有表的添加、删除、修改的函数

ASP 中的 Asp 操作Access数据库时出现死锁.ldb的解决方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 109 ::
收藏到网摘: n/a

在一天某个时间段内打不开,等待好几分钟就会说asp脚本超时,但FTP可以登陆进去,查看数据库目录时,发现与数据库(我的数据库是access数据库)同名的记录锁定信息文件 (.ldb文件)一直都在那里 于是我登陆主机的管理面板,重启了网站服务,ldb文件就消失了,网站打开也正常了,但过了数小时后,网站又再次出现以上情况,此种情况持续了好一段时间,网站后来被虚拟主机的供应商屏蔽了,反馈给我的说法是因为我的网站运行时大量占用CPU资源,所以予暂时屏蔽,让我对网站程序或数据库进行优化。
在百度上搜索了一下这方面的情况,结果也不少,总结下来主要都是因为对数据库存取完后,没有及时释放记录集和断开数据库连接,以下谈谈操作Access数据库的标准方法:
1、数据库连接方法:Conn.asp
<%
dim conn
dim connstr
dim db
db="database/data.mdb"
Set conn = Server.CreateObject("ADODB.Connection")
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(""&db&"")
conn.Open connstr
If Err Then
err.Clear
Set Conn = Nothing
Response.Write "服务器正在维护,请稍后再试。"
Response.End
End If
Sub CloseConn()
'以下是断开数据库连接语句
conn.close
set conn=nothing
End Sub
%>
2、关闭释放记录集
rs.close
set rs=nothing
3、断开数据库连接
conn.close
set conn=nothing
结合以上三个内容,得出以下操作Access数据库的标准方法 Test.asp
<!--#include file="conn.asp" -->
<%
sql="select * from table order by id"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,1
if not rs.eof then
tel=rs("tel")
fax=rs("fax")
end if
'以下关闭并释放记录集语句
rs.close
set rs=nothing
'调用断开数据库连接子函数
Call CloseConn()
%>
根据这个标准,我对我的网站程序进行地毡式的排查、补漏,最后我的网站终于得于正常访问,再也没有出现以前数据库死锁的情况了。