无论我做什么,我似乎都无法使用 FireDAC 连接到 Firebird 2.5 嵌入式数据库。有趣的是,昨天它似乎可以工作,现在突然就不行了。
为了弄清楚为什么它突然停止工作,我开始重建一个干净的项目,这样我就可以逐步弄清楚发生了什么。我添加(复制)了从 Firebird 下载的包的全部内容到我的应用程序目录和数据库本身。
为了避免文件夹问题,我设置了 Delphi 环境选项以将所有文件(和 exe)放在同一目录中。然后我使用在 Firebird *.doc 文件夹中找到的建议并将 fbembed.dll 重命名为 fbclient.dll。(在一些关于我读到 Firedac 需要 fbembed.dll 文件的问题的 FireDAC Q&A 中。好吧,我已经尝试了两种方法,但无论如何它都不起作用)。但让我坚持 fbclient.dll 的第一个问题。
为了建立连接,我在数据模块上放置了一个 FDPhysFBDriverLink1 和一个 FDConnection1。
现在 FDPhysFBDriverLink1:它的 BaseDriverID 是 FB。对于 DriverID,我尝试了两个建议:首先使用“FB”,然后提供 fbclient.dll 的完整路径。似乎没有任何区别。
当我转到 Firedac 连接编辑器并输入数据库文件的路径时,我收到“无法加载供应商库(fbclient.dll 或 fbembed.dll)”错误。但是这两个文件都在应用程序 exe 文件夹中(就像 Embarcadero 网站上建议的那样)。那么,FireDAC 在哪里寻找文件?我对 Firebird 和 FireDAC 有点厌倦了,因为他们不能简单地解释必须做什么才能使连接成功。他们给出的只是一些模糊的选项,它们都不起作用。加这个加那个,最后失败。
因此,如果有人有如何通过直接回答来做到这一点的经验(请不要链接,我已经看过并尝试过所有链接),我将非常感激。尝试几天建立一个简单的连接真的很愚蠢。我也尝试过使用 UniDAC 获得类似的结果。我必须做什么才能完成连接?