vb.net - 我如何更改文件的路径,因为它不正确?
问题描述
System.Data.OleDb.OleDbException HResult=0x80004005 Message='F:\Stock Control Programming Project\Stock Control\bin\Debug\bin\Debug\Database\StockControlDatabase.accdb' 不是有效路径。确保路径名拼写正确并且您已连接到文件所在的服务器。
我有一个 Access 数据库位于:
F:\Stock Control Programming Project\Stock Control\bin\Debug\Database\StockControlDatabase.accdb
但是错误是说路径是:
F:\Stock Control Programming Project\Stock Control\bin\Debug\bin\Debug\Database\StockControlDatabase.accdb
这是不正确的;我想纠正这一点,但我不确定我将如何做到这一点。
解决方案
您的应用程序期望在 .exe 文件所在的文件夹中找到数据库。
您有两个基本选择:
将数据库移动到应用程序放置它的 .exe(或 .dll)文件的文件夹,(如果使用此选项,则系统的所有用户在部署后都必须使用文件共享中的 .exe,没有本地副本 - 即:分发指向 exe 的链接,而不是在每台 PC 上安装 exe)
在您的连接字符串(或数据源文件)中硬编码数据库的路径。 - 这样,当您部署时,您可以将数据库放在服务器共享上并将 exe 文件安装到每台 PC 上 - 更干净......
推荐阅读
- sql - Oracle中的SQL - 如何搜索间隔中的事件?
- ios - Flutter 构建 iOS
- python - 在python3中更改方法的属性
- python - Django - 装饰器限制“员工”
- c# - 无法将数据从视图传递到控制器 ASP.NET MVC 5
- netbeans - 从 Apache Ant 构建 Netbeans
- html - 如何在 display:flex 结构中的其他 2 个项目之间水平对齐文本?
- algorithm - 在无向图中查找关键连接(桥梁)。我的方法不是线性时间吗?
- php - PHP错误:未加括号的`a?乙:丙?d : e` 已弃用。使用 `(a ? b : c) ? d:e`或`a?b : (c ? d : e)`
- sql - 查找交易列表的新日期