我在外面电脑制作的网站拿到家里的电脑上面,除了(像留言)数据不能写进数据库,其他正常,求救
网站数据只能读出来,不能写进去。而且代码完全正常,提示修改资料、留言等上传数据成功。可是就是在数据库里没有上传的数据。有时候还会现实错误信息“不能更新。数据库或对象为只读”
他们有人说是数据库被锁了,请教怎么回事,怎么解决。
参考答案:在自己的机器上架设IIS服务器的时候,经常遇到"不能更新,数据库或对象为只读"的问题,除了数据库自身需要解除只读状态状态以外,其文件夹和上级文件夹的访问权限也是一个关键问题。解决的方法:
造成这个原因的问题就是站点目录的访问权限问题,因为在使用Access数据库的时候,要在同目录生成一个.ldb文件,如果此目录没有写权限或者Access数据库本身没有写的权限,那么就会***这个错误。由于通过浏览器访问网站大都使用Internet匿名访问,我们只需要在数据库的目录权限里添加上“IUSR_计算机名”用户就可以了,分给它“写入”权限。我发现一些文章说让加入EveryOne用户,并给“写入”权限,这个太危险了。原则上是此目录加的可以写入用户就是在IIS中配置的时候加的Internet匿名访问用户,一般默认为“IUSR_计算机名”,不过如果是虚拟主机就要自己看看了。
具体的操作方式就是:
鼠标右键点击数据库所在目录(或者它上级目录,但是注意要能够继承权限)-〉选择“共享和安全”-〉选择“安全”选项卡-〉点击“添加”按钮-〉点击“高级...”按钮-〉点击“立即查找(N)”按钮-〉找到前缀为“IUSR_”的用户名(格式为IUSR_计算机名)-〉选中此用户,点击确定-〉这样这个用户就被加进来了-〉在“Internet来宾帐户”的权限框中,除了默认的还要选中“写入权限”-〉“应用”或者“确定”即可。
注意:XP用户要把文件夹里面 简单共享前面的对号取消。