Ms Access数据库的连接字符串

时间:2009-09-03 11:50:03

标签: c# vb.net iis ms-access

我的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以提高可读性

2 个答案:

答案 0 :(得分:2)

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

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

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

干杯

答案 1 :(得分:0)

同意它应该在SO上。

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