无法在第20行(BDE)解析单位名称"DBTables"

use*_*892 1 delphi delphi-10.2-tokyo

我正面临着运行程序的问题.我的代码太旧了,我不知道它是如何工作的.

Cannot resolve unit name 'DBTables' at line 20
Underclared indetifier 'EDBEnginerError'
Underclared identifier 'Error'
Run Code Online (Sandbox Code Playgroud)

我认为它缺少BDE,但如何将其导入我的项目?

我已经尝试过的事情: - 将BDE迁移到FireDac但没有成功.这些课程没有被替换.

Mar*_*ynA 6

BDE已弃用.最新版本的Delphi默认情况下不安装BDE支持文件.看到:

适用于RAD Studio,Delphi,C++ Builder 10.2 Tokyo的BDE安装程序

RAD Studio/Delphi/C++ Builder中的BDE组件

安装BDE,应该允许编译器找到DBTables.Pas.这应该修复未声明的标识符错误.

这应该让你前进,但如果你需要做任何开发工作,你应该考虑更换BDE.

最初,Delphi的数据库支持,在1995年,基于BDE,这是Borland尝试类似于MS的ODBC.因此,许多后来的DB库(如FireDAC)包括与TTable和TQuery类似的TxQuery和TxTable组件,因此将基于BDE的简单应用程序升级到更现代的DB访问库不需要太痛苦, 除非 BDE应用程序广泛使用直接调用BDE查询引擎 - 这些调用通常是前缀dbi.如果您的代码中有很多代码,那么您需要进行一段interesting时间的升级.