Ms Access 数据库的连接字符串

Posted

技术标签:

【中文标题】Ms Access 数据库的连接字符串【英文标题】:Connection string for Ms Access Database 【发布时间】:2009-09-03 11:50:03 【问题描述】:

我的 Ms-Access .mdb 文件在我的网站上。 它在 App_Data 文件夹中

当前连接字符串为:

OleDbDataAdapter Da = new OleDbDataAdapter("Select * from SerialNo", 
           new OleDbConnection(@"provider=microsoft.jet.oledb.4.0; 
           data source=ftp://ftp.WebsiteName.com/App_Data/SerialNo.mdb"));

我在上面的连接字符串中哪里出错了?

注意:在代码中添加了 CR 以提高可读性

【问题讨论】:

【参考方案1】:

Access(或访问驱动程序)不了解 FTP 或主机名,它希望能够像在本地磁盘上(或在您可见的网络驱动器上一样)打开数据库)。因此,您需要删除主机名内容并为驱动程序提供绝对或相对路径,例如“c:\inetpub\wwwroot\myWebsite\App_data\SerialNo.mdb”。下一个技巧是您需要在运行时确定该路径,以便它不会被硬编码。有多种函数可以让您从绝对相对文件路径进行转换,这里描述了一种这样的方法C# getting the path of %AppData%

如果您使用 Visual Studio >=2008 和数据源,并且数据全部在解决方案中定义,您也可以使用“|DataDirectory|”根据您的 VS、数据库驱动程序和其他内容的版本,应该/可能/不会扩展到正确路径的指令。我倾向于坚持更多的手动方法。

为了将来参考,connectionstrings.com 是获取连接字符串示例的最佳资源。

干杯

【讨论】:

【参考方案2】:

同意它应该在 SO 上。

使用:~/App_Data/SerialNo.mdb 作为上述连接字符串中的数据源。

【讨论】:

以上是关于Ms Access 数据库的连接字符串的主要内容,如果未能解决你的问题,请参考以下文章

ODBC 连接凭据如何存储在 MS Access 中? [关闭]

如何在 Oracle 身份验证中使用 MS Access 连接字符串

MS Access Professional Plus 2019 的 Perl 连接字符串

MS Access 直通查询 - 使用 ODBC 连接字符串时非常慢,手动选择数据源时速度快 - 问题出在哪里

MS Access 更新查询和带字符串参数的内部连接

无法连接到远程 MS Access 数据库