蓝科外贸网站模板

ACCESS数据库操作必须使用一个可更新的查询解决办法

ACCESS数据库无法更新问题:

 一般在Winxpwindows 2003 server下,文件目录的只读属性会影响网站程序写数据库操作,即使用户已经去掉其只读属性,但是之后只读又失效,导致许多网站不能正常运行。事实上,网站程序目录读写权限才是影响其运行的根本原因。所以只读属性能否去掉并不重要,只需要把相应目录赋予读写权限即可。

  1、在通常情况下,Web应用程序只读属性并不影响Web系统运行。在需要写入、更新数据库时,Web程序操作数据库因权限不够会提示"操作必须使用一个可更新的查询。"这种情况可能会在NTFS分区环境下出现,FTA32一般分区不会出现。将Web应用程序放在FTA32分区下运行时,不会出现因权限等问题而导致系统不能正常运行的情况,但是其安全性不如NTFS好。因此,一般网站软件可在FTA32下测试运行,单位正式网站软件建议放置在NTFS下运行。

 2、现以XP环境下,NTFS格式为例。进入网站根目录,工具—>文件夹选项—>查看,将“使用简单文件共享”前的勾选去掉。

 

  3网站根目录赋予Everyone完全控制、读写权限。

 

下面以一个例子更详细的介绍解决此类问题的方法和过程

 

出错举例:

Microsoft JET Database Engine (0x80004005)
操作必须使用一个可更新的查询。
/LeadBBS/inc/Board_Popfun.asp, 
569 


需要权限:服务器管理员,否则联系服务器管理员进行
示例操作系统:Windows 2000 Server

1.
找到你存放网站的文件夹,比如你的网站存放在D:\WEB\News.com
右键点击文件夹,选择属性

2.出来新窗口,选择安全,点击按钮添加(D)


 

3.在出来的窗口中,找到IUSER_开头的名称,并双击,点击确定.

 

4.确定后的结果是这个窗口,在安全的名称列表中多了刚才选择的用户
点击下面的按钮 高级(V)...

5.在弹出的新小窗口中,继续点击 查看/编辑(V按钮

6.出来新窗口..


7.重新选择权限分配.

8.点击应用完成设置

这个错误提示

  因为程序是在别的机器上完成的,应该是没有错误的,根据提示,好像是“IUSR_机器名这个用户的权限不够,“IUSR_机器名这个用户是用来匿名访问网站的用户,一般来说在本机调试的时候,访问自己硬盘的时候用的就是这个用户。

那就重新设定一下目录的权限就可以了,不过,当我打开asp程序所在目录的属性时,却没找到安全这个选项卡,???奇怪了!哦,我用的是winxp系统,找找看吧!肯定被藏起来了~~

我的电脑工具文件夹选项查看使用简单文件共享(推荐) 靠,居然还推荐,好吧 去掉使用简单文件共享(推荐)前面的对号,确定,在看看~~嘿嘿 安全 这个出来了吧~

看看有没有Internet来宾帐户(名字格式为“IUSR_机器名),果然没有!添加!!!???xp里面还需要自己手动添加,我记得原来win2k里面选一下就可以了,好吧,自己动手,丰衣足食!然后将写入的权限赋予这个用户,确定

 

 

详细图解教程下载:点击下载