我的Delphi XE3应用程序使用Interbase组件连接到Firebird 2.5 的SuperServer。
我启动了一个新项目来隔离问题,并尝试连接到我的软件数据库。结果如下。
1 - 我可以正常使用TIBDatabase连接到数据库。
我想部署它以使用嵌入式Firebird我的问题是:
答案 0 :(得分:3)
虽然Interbase和Firebird几乎兼容API,但我记得有些人报告在连接Firebird时使用IB组件(Delphi附带)时出现问题。这些组件仅适用于Interbase,因此您可以确定随着时间的推移情况会变得更糟(更不兼容),而不是更好。所以我建议使用官方支持Firebird的组件。我个人使用UIB这是免费的,但也有其他(免费和商业)。
答案 1 :(得分:1)
我可以使用Interbase组件连接到嵌入式Firebird吗?
默认情况下,您可以使用Interbase组件来使用Firebird。
如果是,那我该怎么办呢?
您必须更改firebird客户端库的名称,一般来说。
在dbExpress和Firebird服务器版本中=>使用fbClient.dll和 dbxFb.dll在程序的客户端。
在dbExpress和Firebird嵌入式版本中=>更改
的名称
fbEmbed.dll到fbClient.dll并在客户端使用dbxFb.dll
程序(fbClient.dll和dbxFb.dll)。
使用IbExpress和Firebird服务器版本=>更改
的名称
fbClient.dll到gds32.dll。
另外,Daniel Magine写了一篇关于Firebird和dbExpress的文章。 http://www.embarcadero.com/rad-in-action/database
如果没有,那么是否有免费的Firebird组件?
您可以使用ZEOS.
<强>更新强> 在Firebird 3中:
当不包含网络协议而只包含数据库名称时,远程提供程序拒绝它,并且Engine12提供程序脱颖而出并尝试打开指定的数据库文件。如果成功,我们将获得与数据库的嵌入式连接。