我创建了一个非常简单的控制台应用程序并尝试使用Firedac访问Firebird数据库。我正在尝试使用私有定义设置实现连接池,如下所述:http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Multithreading_(FireDAC)。我还确保在我的路径中包含FBclient.dll
接下来给出初始化连接的代码:
$subject = Subject::find($id);
$subject -> name = $request -> name;
$subject -> description = $request -> description;
$subject -> max_students = $request -> max_students;
$subject -> save();
$subject -> doctors() -> sync($request -> doctors);
当此代码执行FDManager.AddConnectionDef()时,我收到一个异常'类xxx的对象工厂缺失' (见附后的截图):
这是一个控制台应用,所以我没有Form或visual元素。不知道该怎么办?
答案 0 :(得分:3)
好的想通了。我只在我的uses子句中添加了FiredAC.Comp.Client。似乎Firedac需要一大堆单位。更新了我的使用条款如下:
FireDAC.Comp.Client,
FireDAC.Stan.Intf, FireDAC.Stan.Option,
FireDAC.Stan.Error, FireDAC.UI.Intf, FireDAC.Phys.Intf, FireDAC.Stan.Def,
FireDAC.Stan.Pool, FireDAC.Stan.Async, FireDAC.Phys, FireDAC.Phys.FB,
FireDAC.Phys.FBDef, FireDAC.VCLUI.Wait, Data.DB;