【发布时间】:2014-04-25 17:34:29
【问题描述】:
我正在创建一个连接到 ms-access 数据库的 winform 应用程序。问题出在我的连接字符串上,因为我可以在本地访问数据库,但是如果我从我的 USB 记忆棒或任何其他电脑上运行它会给我错误。如何修改我的连接字符串,以便我可以在其他电脑上运行我的应用程序而不会遇到任何问题。
string strConnect = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Aakash\Documents\Visual Studio 2013\Projects\Industrial Foundry\record.accdb";
using (OleDbConnection con = new OleDbConnection(strConnect))
{
con.Open();
using (OleDbCommand cmd = new OleDbCommand("select * from Industry ", con))
{
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
da.Fill(dt);
dataGridView1.DataSource = dt;
}
}
【问题讨论】:
-
您的连接字符串包含指向 C: 驱动器上数据库的硬编码路径。您想如何定位访问文件?
-
这和 WinForms 有什么关系?请修改您的标签,并替换您的问题标题。目前,您的问题标题包括语言(不相关,在标签中给出)、UI 工具包(据我所知与问题完全无关)和一个非常笼统的词(application)这并没有说明您面临的问题。
-
2 个即时问题; 1.你的数据库连接字符串包含一个文件系统路径;此路径必须存在于您使用该应用程序的每台机器上。 2. 如果您使用 Access 并且目标机器没有安装 access,您需要安装运行时可分发来自:microsoft.com/en-us/download/details.aspx?id=13255
-
我将编译该项目并将文件的发布版本提供给我的客户以在他的 PC 上运行。
-
@dash 目标机器已安装访问权限,但这里的问题是数据源,因为我不知道如何将它从 pc 更改为 pc。