在页面中插入记录,预览网页进行测试时,突然遇到问题大致如下:
错误类型: Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Access Driver] 机器 ‘BLUES‘ 上的用户 ‘Admin‘ 以独占方式的锁定数据表 ‘c_test‘。 |
引起这个错误的可能是:
1,数据库采用的Access文件
2,在DW中连接数据库,不是采用的“自定义连接字符串”,而是使用“数据源名称(DNS)”,可能会有该情况发生。
对于错误2,我还是建议,并绝对推荐使用“自定义连接字符串”,很奇怪的是原先看的几本有关DW的教材,都是使用此方法介绍给读者。
我想可能是“数据源名称(DNS)”讲解时好描述吧(当时我写DW一书时,就觉得说明“自定义连接字符串”对一个网页初学者是个多么难以理解的东西)。
那么我这里说不用DNS,推荐另外一种。是因为如果当你的网页程序上传到网络空间时,DNS是需服务器管理员配置的,而对于我们现在基本使用“虚拟主机”,这个操作基本是不可能的。
至于如何使用“自定义连接字符串”,我这里有个文章介绍:
http://www.cnbruce.com/blog/showlog.asp?cat_id=27&log_id=219
那么,现在我好专心地说说错误1了。以下是罗列的解决方法,你可以一一注意下,排查除错。
1,数据库的文件访问权限问题。
这主要出现在磁盘格式是NTFS的机器上,对FAT32格式的则无妨。
当出现该网页错误时,说明该文件可能没有合适的权限。
一般,单击数据库文件的右键,选择属性,选择安全选项;
如果你是NTFS格式,但文件属性没有安全选项,则选择文件夹属性,注意,使文件夹属性,将“简单共享”去掉。
如果有安全选项,查看下有没有User用户,如果没有需要添加,添加的方法是“Iusr_计算机名”,计算机名是什么,看到“……机器 ‘BLUES‘ 上的用户 ‘Admin‘ 以独占方式的锁定……”,机器‘BLUES‘就是你的计算机名,各位类推。
具有了来宾用户,则对该用户进行权限匹配,增加“修改”的权限。
以上操作无图说明,因本人机器采用的FAT32,无法截图,可能内容有些出入,各位简单看下了,我将尽快将该方法详细奉上。那么下面再看第二类说明。
2,你在测试该网页程序的同时,你的数据库文件在打开。
比如上面我截的这张图,就是故意将数据库文件打开,要不还真截不了图以作说明。这方法简单,直接关闭该数据库文件即可。
顺便,我这里最极端的则是,数据库文件打开,并且表也打开,FAT32的情况下,网页浏览依然没有问题(WINXPSP2,ACCESS2003),仅在打开设计数据库表时,才出现如上错误。
当然了,还是建议你直接关闭。
3,数据库文件已经关闭,但临时文件文件依然存在
该临时文件,就是Access记录锁定信息文件,其正常是数据库文件打开就自动产生的。就比如WORD文件打开的同时会有个文件一样(M$的东西都是汤汤水水一回事)。但现在数据库文件关闭了,而你的临时文件还在,只能说明你是非正常关闭数据库。那么现在再动下手,把这个临时文件也删除旧了事。
这种情况还同样发生在“第一次浏览时正常,当我刷新下网页就又出错了”。还是那句话,NTFS和临时文件。