delphi - 将应用程序从 FIB+ 迁移到 Fire-DAC 组件的经过验证/推荐的方法

标签 delphi delphi-xe3 fibplus firedac

我正在将大量内部具有硬连线 FIB+ 连接的应用程序迁移到 Fire-Dac 组件,并且我正在寻找一些最不痛苦的方法,以及如何做到这一点。

首先,我解耦并迁移了后端以获得连接中立和连接依赖部分,并手动重构了现有应用程序。我也编写了 FireDac 部分。

迁移Delphi代码似乎没问题...

但是最大的痛苦似乎是设计时放置在表单和数据模块上的组件的迁移:我安装了 GExpert 并尝试了它的命令“用定义的规则替换组件”如何映射某些属性,但它失去了之间的相互引用组件,可能是由于逐步替换过程中的类型不兼容。

我当前的方法是手动操作:为旧 FIB+ 组件的名称添加后缀,将原始名称复制并粘贴到新的相应 Fire-Dac 组件中。我对所有组件重复此步骤,然后正确设置属性并删除 FIB+ 组件。它允许我在此过程中一次又一次地检查旧设置。

有人有一些经过验证/推荐的方法可以做得更好吗?

谢谢,pf

最佳答案

几个方面:

  1. 如果您使用不同 SQL 操作的属性,则可以从 FireDAC TADQuery 派生 TMyQuery。 TMyQuery 将创建 TADUpdateSQL 并在 TMyQuery 接口(interface)中发布它的 XxxxSQL 属性。此外,您还可以在 TMyQuery 中引入 FireDAC TADQuery 中遗漏的其他 FIBPlus 属性和方法。
  2. 您可以对其他 FIBPlus 组件使用类似的方法,以实现 FireDAC 和 FIBPlus 之间的高兼容性级别。
  3. 您可以使用 FireDAC 插件工具 - ADDFMChanger 自动将 PAS/DFM 从 FIBPlus 迁移到 FireDAC。设置和迁移将类似于 BDE -> FireDAC migration 。 FireDAC/AnyDAC 插件您可以从 da-soft.com 下载.
  4. 主要的迁移问题可能是 FireDAC/FIBPlus 行为的差异。我无法在这里发表评论,因为我没有 FIBPlus 经验。

关于delphi - 将应用程序从 FIB+ 迁移到 Fire-DAC 组件的经过验证/推荐的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16620795/

相关文章:

delphi - 如何在 Delphi 7 中设置调试器参数?

delphi - 在 Delphi 中创建可访问的 UI 组件

delphi - 使用 Delphi 获取 sqlite3.dll 未找到错误

delphi - 如何向 Delphi Docking 示例添加持久性

delphi - 将 IBXpress Interbase 6 应用程序移植到 Delphi 7 上当前的 Firebird 平台?

delphi - Firemonkey designide.dcp 64 位

delphi - 打开备忘录中的任何文件?

multithreading - 使用 TSaveDialog 了解应用程序线程消息丢失的原因

delphi - 如何在TpFIBDataSet SQL查询中使用参数?

delphi - Delphi-Firebird数据迁移-不同的字符集