gpt4 book ai didi

c# - 部署到 "C:\Program Files\..."后,我的应用程序无法更新 Access 数据库

转载 作者:行者123 更新时间:2023-11-30 14:57:41 24 4
gpt4 key购买 nike

我已经部署了我的应用程序以供其他用户(另一台计算机)使用,但是当我尝试将数据添加到数据库时出现错误

Operation must use an updatable query

错误是这样的(这是我已经部署我的程序并在应用程序下运行,而不是在 Visual Studio 下运行):

enter image description here

但它在 visual studio 下完美运行,像这样的图像(请注意,一旦我单击提交按钮,就会出现上图的错误,它应该存储在数据库中,并像图像一样显示在 datagridview 上下):

enter image description here

而且我还有另一个问题,删除功能没有运行,部署我的程序后出现添加和删除的错误,但我会在另一个线程上发布。

我该如何解决?

最佳答案

当 Visual Studio 应用程序处于开发阶段时,它驻留在开发人员具有读/写访问权限的文件夹中。这显然是必要的,因为开发人员需要能够编辑源代码文件。如果您将数据库文件“放在代码中”,那么应用程序可以更新数据库文件,因为它位于“可写”位置。

但是,如果在部署时数据库文件“与代码一起”并且安装程序将文件(即可执行文件和数据库文件)放入 %ProgramFiles% 中在目标机器上(例如,C:\Program Files\MyApplication),那么普通用户将对该位置具有写入权限。 %ProgramFiles% 中的文件通常限制为只读以保护系统免受恶意软件的侵害。

有些人会尝试将安装程序配置为授予普通用户对 %ProgramFiles% 下的某些文件或文件夹的写入权限。但这是一个Bad Idea™。安装程序应该真正将数据库文件复制到目标用户通常可读/写的位置:%USERPROFILE% (针对特定用户),或 %PUBLIC% (对于所有用户)。

关于c# - 部署到 "C:\Program Files\..."后,我的应用程序无法更新 Access 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20427927/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com