2009-01-26 34 views
2

我有我在VS2005,C#,.NET 2.0中构建的网站。本网站针对Access数据库执行交易。它在开发中工作正常。该mdb文件驻留在App_Data访问数据库 - 操作必须使用可更新的查询

我已经在这台机器上设置IIS来测试网站,因为它将被部署。我将该网站发布到我的IIS虚拟目录。一切顺利。

每当我尝试更新,插入或删除我得到上述错误“操作必须使用可更新的查询。”

我已将下列权限App_Data文件夹:

machinename/IUSR - modify 
machinename/ASPNET - modify 
NETWORK SERVICE - modify 
domainname/myaccount - full 

我甚至疯了,给了Everyone组完全权限,但也不能工作。

在我的web配置我有以下行:

<identity impersonate="true"/> 

这条线路是冒充我的登录帐户提供访问应用程序。

我仍然无法执行插入,更新或删除查询。有任何想法吗?

UPDATE:

感谢您的响应。我读过那篇文章。我也读过谷歌搜索结果的前4页,并且他们都谈论了对DB文件夹的权限。我遵循了所有建议,没有结果。

  1. 我的权限根据MS文章描述设置。
  2. 数据库正在以正确模式打开,否则在测试时无法正常工作。
  3. 我没有使用ODBC,所以没有了。
  4. 我没有使用SQL Server,所以也没有。

回答

1

用户(模拟或asp用户)必须具有在目录中创建文件的权限,因为Access会创建一个.ldb文件。

其他可能的原因描述in the MS Knowledgebase

UPDATE: 你检查的有效权限?也许继承在这里发挥作用,因为明确否认。

+0

谢谢。在我通过查看该帐户的有效权限找到的IUSR帐户上有明确的拒绝(出于某种原因)。一旦我解决了这个问题,我很乐意去。 – somacore 2009-01-26 21:04:40

0

感谢您的回复。我读过那篇文章。我也读过谷歌搜索结果的前4页,并且他们都谈论了对DB文件夹的权限。我遵循了所有建议,没有结果。

  1. 我的权限设置为文章中描述的MS 。
  2. 数据库是 以正确模式打开, 否则在测试时不起作用。
  3. 我没有使用ODBC,所以没有了。
  4. 我没有使用SQL服务器,所以这也是 了。
+1

除非您实际回答自己的问题,否则不要发布答案。如果您想评论其他人的回答,请更新您的问题,或点击其答案下方的“添加评论”。 – 2009-01-26 20:20:31

相关问题