我在运行程序时遇到问题。我的代码太旧了,我不确定它是如何工作的。
Cannot resolve unit name 'DBTables' at line 20
Underclared indetifier 'EDBEnginerError'
Underclared identifier 'Error'
我认为它缺少 BDE,但如何将其导入到我的项目中?
我已经尝试过的事情: - 将 BDE 迁移到 FireDac 但没有成功。这些类没有被替换。
最佳答案
BDE 已弃用。最新版本的 Delphi 默认情况下不安装 BDE 支持文件。请参阅:
BDE Installer for RAD Studio, Delphi, C++Builder 10.2 Tokyo
BDE components in RAD Studio/Delphi/C++ Builder
安装BDE,应该允许编译器找到DBTables.Pas。这应该可以修复未声明的标识符错误。
这应该能让您继续前进,但如果您需要进行任何开发工作,您确实应该考虑替换 BDE。
最初,Delphi 的 DB 支持是在 1995 年,基于 BDE,这是 Borland 尝试做的类似于 MS 的 ODBC。因此,许多后来的数据库库(例如 FireDAC)都包含与 TTable 和 TQuery 类似的 TxQuery 和 TxTable 组件,因此将简单的基于 BDE 的应用程序升级到更现代的数据库访问库不必太痛苦,除非 BDE 应用程序广泛使用对 BDE 查询引擎的直接调用 - 这些调用通常带有前缀 dbi
。如果您的代码中有很多这样的代码,那么您的升级将会有趣
。
关于delphi - 无法解析第 20 行的单元名称 'DBTables' (BDE),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44314923/