【问题标题】:DBF file is not a valid Path - VBADBF 文件不是有效的路径 - VBA
【发布时间】:2020-03-17 22:01:40
【问题描述】:

我正在尝试通过 Visual Basic 与 dbf 文件建立连接,我正在使用以下连接字符串:

dbConn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="C:\Users\joelgjunior\Desktop\PROVISAOMAT_012020.dbf";Persist Security Info=False;

连接字符串似乎正确,但是代码无法识别dbf文件我不知道为什么,名称和路径写入正确但vb总是说不是有效路径,否则我做到了到一个 accdb 文件,它工作。在这种情况下有人可以帮助我吗?谢谢

【问题讨论】:

  • 您需要像 Data Source=""C:\Users\joelgjunior\Desktop\PROVISAOMAT_012020.dbf""; 一样转义 DataSource 中的引号。
  • 我试过了,但还是一样的错误信息。
  • 尝试完全去掉引号。见here
  • 问题出在 dbf 文件中,系统无法识别,但是当我使用 accdb 扩展文件时,它总是可以正常工作
  • 您的连接字符串可能使用了错误的 Provider。试试Jet 提供者。访问我提供的链接了解详情。

标签: vba dbf


【解决方案1】:

连接字符串指向数据文件所在的 PATH。然后,可以访问该路径位置(或其中的子文件夹)内的任何 .dbf。

这样想。一个普通的 SQL 命令可能是

select * from PROVISAOMAT_012020 where...

SQLCommand 对象使用 CONNECTION 指向该位置。因此,如果连接也具有 dbf 名称,则您的查询基本上将被解释为

select * from C:\Users\joelgjunior\Desktop\PROVISAOMAT_012020.dbf\PROVISAOMAT_012020 where...

另外,如果使用 .DBF 文件,是 dBASE 还是 Visual FoxPro (VFP),如果是 VFP,我会下载这些驱动程序并使用它们而不是 ACE。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-12
    • 1970-01-01
    • 2010-11-30
    • 2017-04-29
    • 2020-05-17
    • 2018-08-25
    • 2015-11-03
    • 1970-01-01
    相关资源
    最近更新 更多