繁体   English   中英

如何使用c#获取accessdb的当前工作路径?

[英]How get current working path to accessdb with c#?

例如,我有一个连接字符串

connection = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0; 
              Data Source=D:\WindowsFormsApplication4\bin\Debug\some.mdb"); 

但它只能在我的电脑上正常工作。 如何使它在所有计算机上都能正常工作?

您可以使用

string myconnectionstring = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=\\\\" + PCName + "\\datafolder\\some.mdb";

指定PCNAME

如果它仍然产生问题,则将该数据库共享文件夹分配为映射驱动器并使用类似的内容。 例如映射驱动器是 Z: (\\PCName\\ApplicationFolder)

有关更多详细信息,请参阅链接: 连接到 LAN 网络位置上的数据库

违规代码如下:

Data Source=D:\WindowsFormsApplication4\bin\Debug\some.mdb"

基本上,您将连接字符串硬编码到计算机上的某个位置。 "\\bin\\Debug" 的使用尤其成问题,因为这几乎肯定与实际生产环境中的路径不同。

如果可能,我建议将其放在某种配置文件中。

总是从这里开始。

https://www.connectionstrings.com/

在你的情况下,我认为它应该是这样的。

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\myFolder\myAccessFile.accdb;
Persist Security Info=False;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM