答案 0 :(得分:9)
取决于要比较的dbExpress驱动程序和“其他驱动程序”。但是一个好的库可能比标准的dbExpress驱动程序更快。您可以查看我们的基准测试结果here。 TADQuery
是AnyDAC个查询对象。 Borl TSQLQuery
是使用标准dbExpress驱动程序的Delphi TSQLQuery。
是,当通过数据库SQL方言访问某个功能时。不,如果可以通过数据库客户端API访问某个功能。例如,使用SQL Server dbExpress驱动程序,您可以使用BACKUP DATABASE
SQL命令备份SQL Server数据库。但是使用Firebird dbExpress驱动程序无法备份Firebird数据库,因为这需要使用Firebird服务API。与许多其他领域类似。
答案 1 :(得分:3)
您也可以在同一个项目中同时使用这两种类型的驱动程序:
dbExpress驱动程序适用于所有不需要特定功能的东西,因此您可以在不同的数据库系统之间实现某种可移植性,同时又会遇到Delphi标准组件,代价是性能略有下降。
真正的本机驱动程序/组件集(如IBX)仅针对dbExpress无法解决的特定功能,例如创建数据库,执行备份/还原或执行某种操作特定于数据库供应商的维护。本机驱动程序还可用于优化要求高速运行的模块,例如批量加载操作。
还有第三种方法,通过使用第三方独立于数据库的组件,如UniDAC和AnyDAC,根据其开发人员的说法,它们比它们更轻量级,更优化和更强大。 dbExpress,同时保留数据库独立性和对特定功能的一些访问权。