【问题标题】:access .mdb Not a valid file name.访问 .mdb 不是有效的文件名。
【发布时间】:2016-05-04 02:40:07
【问题描述】:

我的程序需要使用 c# 连接到旧的访问数据库 .mdb。 我在部署程序时遇到问题。

这是场景:

  • 所有机器均使用 access 数据库引擎 x84bit 和 x64 进行了测试
  • 所有机器都是64位操作系统所有sum.mdb同目录
  • 开发机:无错误-用office所有位类型测试
  • 客户端A机office 64bit:无错误
  • Office 32bit 客户端 B 机器:无错误
  • 带有 office 64 位的客户端 C 机器:错误:不是有效的文件名
  • 带有 office 32 位的客户端 D 计算机:错误:不是有效的文件名

这是 C 和 D 机器上的错误

我尝试使用 .udl 检测 .mdb 文件,但显示此错误

这是我的连接字符串

accessProvider = "Microsoft.ACE.OLEDB.12.0";
accessDatasource =  file.ReadToEnd() + "\\" + "SUM.mdb" ;
accessPassword = "samplePassword";

accessString = @"Provider=" + accessProvider + "; " +
             "Data Source=" + accessDatasource + "; " +
             "Jet OLEDB:Database Password=" + accessPassword + ";";
            MessageBox.Show(accessString);

【问题讨论】:

标签: c# ms-access ms-access-2010 database-connection connection-string


【解决方案1】:

在我发布问题前 1 周,我搜索了我遇到的所有论坛和博客,但没有成功。在我发布这个问题一小时后,答案就出来了。

似乎我正在访问的目录文件在客户端计算机 C 和 D 上有一些隐藏的换行符([enter] 或 \n 或目录文本下方的另一行)。

我尝试显示连接,但消息框没有显示新行。 oleconnection 似乎检测到新行并显示无效路径。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-23
    相关资源
    最近更新 更多