ACCESS数据库锁定问题_第1页
ACCESS数据库锁定问题_第2页
ACCESS数据库锁定问题_第3页
ACCESS数据库锁定问题_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、ACCESS数据库锁定问题问题1单位网站突然有的时候不能打开网页。重启电脑后问题解决。说是CONN.ASP第6行错误。同时生成一个.LDB文件。在网上查了下说是数据库没有关闭或锁定了。请问如何关闭啊,下边是CONN.ASP代码: <% starttime=timer() StrSQL="DBQ="+server.mappath("admin/data/news30000.mdb")+"DRIVER=Microsoft Access Driver (*.mdb);" 'connstr="driver=SQL Se

2、rver;server=(local);database=master;uid=sa;pwd=;" set conn=server.createobject("ADODB.CONNECTION") conn.open StrSQL(第6行) %>答:如果是ACCESS数据库,应该是并发访问造成的问题。因为ACCESS没有行锁。所以你有个一个用户在网上改一条数据,另外一个用户再上来访问相同一条数据时就给锁了。重启动后所有的连接全断开了,所以就没问题了。如果有可能最好不用ACCESS做后台数据库。赞同-问题2我的数据库老是被锁住,网页打不开,请高手帮忙!我的co

3、nn.asp是:<%scadb=mydata&"datahotel/#feel.mdb" 'mydata 为各文件中设置的路径,请不要改动connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(""&scadb&"")On Error Resume Next Set conn = Server.CreateObject("ADODB.Connection") c

4、onn.open connstr If Err Then err.Clear Set Conn = Nothing Response.Write "<div align='center'><p><br><br><br><font color='red' site='3pt'>数据库连接出错!请检查数据库连接指向-</font></p></div>" Response.End End If%>答:你的数据库连接写法是

5、正确的,是不是数据库太大,几百M的话容易出现这个问题,建议换sql数据库。不想换的话可以把数据库下载到本地压缩修复一下再传上去。-问题3怎么在asp中判断access数据库已经被锁定用asp作为前端,数据库是.mdb和.xls文件(在不同的页面中,两个数据库不是一起用的)。有时候需要打开数据库文件,此时数据库会被锁定(即是产生.ldb文件的情况),提示“Microsoft JET Database Engine error '80004005' .已经被另一个用户独占”。我想redirect到一个统一的维护页面,应该用什么语句判断表被独占了呢?谢谢!问题补充: 但是我要在哪里加

6、上跳转语句呢?我就是不想让别人看到“Microsoft JET Database Engine error '80004005' .”的提示.请说一下怎么跳转好吗?小弟初学答:我知道用判断语句,其实我想问的是应该用什么语句.不过问题解决了,判断err就行啦,呵呵-问题4ACCESS多个人使用数据库锁定,怎么解锁答:网友你好,如果一个数据库多个人使用的话,那么就需要它具有网络功能。可是Access是一个垃圾数据库,只适合单机使用。如果你想使用网络网络库,就用SQL Server 2000挺好的呀,可以在微软XP 系统上安装开发版本的。如果你的问题是想问当软件客户端在连接Acces

7、s的时候,会出现游标问题,那么就选择游戏类型呗,我这边有的,查询,删除,更新等等。-问题5Access数据库连接关闭与.ldb文件锁定解决方法答:这几天一直被ASP调用数据库引起CPU使用率高达100%的问题困扰,刚刚终于把问题解决了,可以睡个好觉了!常用的数据库连接方式:Dim connstrdim dbpathdbpath="#123$asd31.mdb"connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(dbpath)Set conn = Serv

8、er.CreateObject("ADODB.Connection")conn.Open connstr关闭语句不仅是.(断开记录)Rs.closeSet Rs=Nothing还有:(断开连接)Conn.CloseSet Conn=Nothing排除上面的原因之后.用ACCESS打开你的数据库,选择菜单中的工具->选项->高级更改默认打开模式为共享,更改默认记录锁定为不锁定.如仍然不行将下面的选项使用记录级锁定也取消.确定后保存,然后打开,修复/压缩数据库.删除目录中的LDB文件(如无法删除,先结束相关进程或重新启动计算机删除即可)有时候检查一下是否有页面同时争

9、用资源的情况,我的问题就是属于这个情况造成的!欢迎大家光临指导我们的网站:(济宁网站建设专家-易远网络)问题6关于“锁”的问题尽管access不是一个大型的数据库,但也要考虑多用户使用时的并发性及有可能产生的错误,如“读脏数据”、“不可重复读”、“修改丢失”等,所以并发控制也是很重要的。我们知道,“锁”是解决并发出错问题的主要方法,“锁”有主要有两种:排它锁“x”与共享锁“s”,在access环境中,怎样应用这两“锁”呢?没有人能指教吗?请大家展开讨论。好似ACCESS只有共享锁,而没有排它锁,即使有用户正在编辑某一数据,别的用户照样可以读这个数据,这样就有可能产生一些并发错误,如“不可重复读

10、”等,怎样锁定正在编辑的数据,使数据没有修改结束之前,数据不可读呢?独占就不能供多用户使用了,我们要探索种在多用户环境下的解决方法。上面的朋友的回答都没有能解决问题。对于并发的数据库而言,排它锁是必须的。举个例子说,如有一货物销售系统,现在某种货物库存还有100箱,此时甲进行操作,拟售出货物60箱,系统查出货物还有100箱,售出操作允许执行;就在甲正进行售出操作的几乎同一时刻(甲已经键入售出60箱,但有些其他信息正在键入或信息正在通信线路上传输,售出记录还没有真正保存到数据库),乙也拟售出这种货物60箱,因为甲的操作还没有结束,记录还没有保存,所以当前库存还是100箱,所以系统也允许乙售出这种货物60箱。当两人的操作都完成了之后,实际共售出了货物120箱,但库存根本就没有这么多货,并发操作引起了错误。为了备免这样的情况发生,就要用到“排它锁S”,当某一操作员拟售出某种货物的时候,必须获得这种货物的“排它锁”,锁定这种货物,使其他用户不能编辑相关的数据,也不能读取相关的数据。如上例,甲拟售出某货物60箱,就将这种货物锁定,在甲没有操作完成期间,乙也拟售出货物60箱,因甲已锁定数据,乙没法读取数据,只能等待甲释放“锁”。甲操作完成之后,释放了“锁”,乙获得控制权可以读取数据,但这时库存量已经是40箱

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论