ASP-Access网站的数据库只能读不能写,求助!

运行该网站的IIS服务器是台WIN7虚拟机,加入了一个域,但WIN7系统和IIS基本上和普通电脑无异。这个网站一直运行都很好,但昨天我为了增加一个HTTP的端口,在IIS管理里新建了一个站点,把原来的default web site删除了,之后就出现了只能读ACCESS数据库,但不能写入的现象。后来重装了无数遍IIS也没有解决问题。

诡异的是我朋友在另一台物理机上创建IIS,然后一开始也是只能读不能写,但把网站所在目录的IIS_IUSRS(主机名)的权限设为读写后,就可以正常访问了。我的虚拟机上的网站目录已经设为了IUSRS用户组满权限,WINDOWS\TEMP也设置了IUSRS满权限,但就是不能写入数据库。基本上我们觉得这个问题就是权限引起的,但我和我朋友的系统设置已经找不到哪里不一样了,为什么就是在这台虚拟机上有问题?求助万能的大神为我解开谜团,谢谢您!
补充:可以肯定ACCESS数据库文件没有损坏,用OFFICE可以打开;ASP语句没问题,因为在物理机上都可以运行。

能读不能写入,很可能是数据文件夹权限问题。要解决windows 7文件夹权限问题可以尝试:

1. 把WWWROOT文件夹下的网站文件夹的IIS_ISURE用户权限设置为满权限, WINDOWS\TEMP的IIS_ISURE用户权限为满权限,即可写数据库文件。2.降低整个inetpub的安全级别: 在cmd下运行: icacls c:\inetpub /settintegritylevel M命令, 将安全级别降为为中级(windows 7某些版本默认C盘文件夹安全级别为H)。3. 如果还是不行,将WWWROOT文件夹下得网站文件夹写权限全开给一般用户。即开放满权限给Gebruikers(XXXXX000002\Gebruikers)。追问

我晕啊,真的是用户组权限的问题\!之前一直以为只有IIS_ISURE组的权限要给满,根本就没想过原来普通USER组的权限也要给满啊!这个INETPUB或者WWWROOT文件夹不能被INTERNET匿名访问不是只跟IIS_ISURE用户组有关吗?看来所有用户组都给满权限就对了。总之问题解决了,叩谢苏郗同学神力解答,终于可以过个好年了!

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-12-31
这个简单,

右键站点文件夹——属性——安全——添加——高级——立即 查找——Eve..——确定——确定。追问

可以基本上确定不是EVERYONE用户的问题,我在物理机上添加EVERYONE后给满权限状况依旧,在虚拟机上由于得在域控做更改,我没有试,但物理机上的实验基本确定跟这个没关系。不过还是谢谢你!

第2个回答  2013-12-31
“c:\windows\temp”目录添加一个Everyone设置完全权限。 如果还不行,继续下面的操作: 在运行栏中依次输入如下命令: regsvr32 jscript.dll regsvr32 vbscript.dll iisreset追问

都试过了,还是不行。不过谢谢你。

第3个回答  2013-12-31
你可以新建一个站点试试,这样,应用池会重新建立一个的。。。追问

谢谢回答,但我新建了两个站点,问题也是一样。这两个里面的asp程序也用到ACCESS数据库,同样是可以读不可以写。报错信息如下:

抱歉系统是荷兰语版,但错误码是统一的。



查IIS的log文件,出错的记录说“操作必须使用一个可更新的查询”,另外我在家里的物理机上装IIS后同样遇到这个问题,都是WIN7默认设置啊,所有IIS7用户应该都一样的,难道其他用ASP-ACCESS的人没有问题吗?救命哇T_T

追答

贴你更新代码出来SEE SEE。。。

追问

代码肯定没有问题,因为完全一样的代码COPY在别的机器上用一点问题都没有撒。哦对了,新年快乐!

ASP-Access网站的数据库只能读不能写,求助!
能读不能写入,很可能是数据文件夹权限问题。要解决windows 7文件夹权限问题可以尝试:1. 把WWWROOT文件夹下的网站文件夹的IIS_ISURE用户权限设置为满权限, WINDOWS\\TEMP的IIS_ISURE用户权限为满权限,即可写数据库文件。2.降低整个inetpub的安全级别: 在cmd下运行: icacls c:\\inetpub \/settintegrity...

在asp中对access数据库插入数据,总是“Microsoft JET Database Engine...
1、将数据库的只读属性去掉(可能没有效果);2、给数据库所在目录的属性中“安全”选项卡里添加everyone用户,让其拥有“写入”权限;此时就差不多了,如果还有问题,可以通过邮箱与我联系yanjibao@163.com 还有一点需要注意的,FAT32分区格式不会遇到如下问题,但NTFS会,上面的方法都是基于NTFS的解决...

困扰两周的权限问题:access数据库只能读取不能写入
应该是权限问题,按你写的步骤修改即可~如果你找不到”文件夹选项”步骤如下:管理员身份登陆-->打开资源管理器-->点”工具”(最上边工具栏”帮助”的前边,”收藏”的后边...)-->点”文件夹选项”下面步骤跟你写的相同~希望能帮到你 ~...

...这个ASP程序为什么一直只能读,写不进ACCESS中呢???我已经尝试了很多...
要想通过asp操作读写数据库,就必须给Internet来宾帐户(默认是通过该帐户访问的)以读写的权限,具体步骤如下:数据库文件-〉属性->安全->选择以IIS开头的那个帐户,也就是Internet来宾帐户-〉在下面的权限中,赋予相应的读写权限

ASP+access,数据库无法写入怎么办?
那是因为权限不够,你把数据库的USER权限设置为修改就可以了

access 只能读不能写
如果磁盘格式是NTFS,数据库是ACCESS,那可能是文件夹权限问题 打开数据库所在文件夹的"属性"--"安全"--"添加"--"高级"--"立即查找"--双击"everyone"--"确定"--选种everyone在下边的权限选框中选择"写入"--确定

ASP连接数据库ACCESS测试可以用上传后就不能用了!
1. Access数据库在本地测试时,所放在的目录有修改\/写入权限,但是,上传到虚拟主机后,数据库目录没有写入权限。解决方法是:可以将数据库放在服务商指定的目录(比如:database)中,同时连接代码(比如conn.asp)也要相应修改。2. 如果服务器用的是windows 2003独立主机,配置服务器平台的时候,可能是...

ASP网站ACCESS数据库被非法写入,如何解决~!
你的网站可能存在注入漏洞啊,你可以用domain3.5 工具来自查下,这个工具就可以利用注入漏洞写到数据库中,如果存在注入,你可以用“SQL通用防注入程序ASP版3[2].0最终版”插入到网站中,这样可以起到防注入的效果。

ASP连接不上Access数据库!!请问有哪些可能原因?
1: access 数据库权限访问限制问题居多。主要解决办法。数据库文件右键->属性->安全->添加->高级->立即查找-> 选择everyone 然后增加everyone的权限 一般来讲可以搞定。2:IIS没有设置好。不过这种现象不多。主要看看IIS的配置。在IIS 相应站点 然后右键属性 找到 主目录 这项。执行权限 改成 纯脚本...

ASP与Access数据库连接出错 如何解决?
ASP与Access数据库连接出错是因为缺少对访问的支持配置。1、需要安装一些功能来支持ASP应用程序的解析,打开:控制面板- 程序 - 程序和功能 - 打开或关闭Windows功能,按照下面这个图示,把相应的ASP选上就行了。2、设置好IIS(开启"启用父目录路径",要不你用..\/路径的时候可能会出错),做好相关...

相似回答