问题标签 [bde]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2685 浏览

null - Paradox 如何管理 null 和空值?

我通过 Borland 数据库引擎 (BDE) 使用 Paradox 表。

我无法实现在字符串字段(Paradox 数据类型“A”)中处理null空字符串值的方式。

我的具体问题是如何确定字段值是 null 还是空字符串。在数据库桌面工具中,它们似乎都是空字符串。

我需要这个,因为我正在将数据(使用 Database Desktop 以及以编程方式)迁移到 Firebird DB,并且似乎是空字符串的字段值都作为空值复制到 Firebird ...甚至属于索引的字段!如何区分真正的 null 和空字符串?它取决于 Paradox 还是 BDE?谢谢!

0 投票
2 回答
992 浏览

delphi - 从代码中关闭 BDE

我们有一个使用 BDE 的遗留应用程序。(考虑到它的年龄,BDE 继续工作得非常好)。

有时我们的应用程序需要操作文件夹(重命名、移动等),但 .NET 或 .LCK 文件在文件夹中保持打开状态,从而阻止了这种情况。我们一直无法在我们的代码中找到任何仍然打开的表或查询。

除了让我们的程序外壳连接到非 BDE 程序并自行终止之外,我们是否有一种编程方式来关闭 BDE,从而解锁这些文件。

标准免责声明:是的,BDE 已死。是的,我们应该迁移到更现代的数据库。是的,总有一天 BDE 将不再工作。由于有近 200 万行遗留代码,迁移(即使使用像 Sybase Advantage 这样的插件兼容平台)并不是一个廉价的项目,这就是为什么我们还没有这样做的原因......

0 投票
2 回答
3794 浏览

windows - 如何在 Windows 7 下找出应用程序需要的权限

有没有办法找出我的应用程序需要哪些权限才能在 Windows 7 环境中运行?

我有一个使用 BDE 和 ODBC 进行数据库连接的 Delphi 应用程序。此应用程序适用于大多数使用普通用户帐户运行 Windows 7 的计算机。但是,在某些计算机上,它仅适用于具有管理权限的帐户,而不能在普通用户帐户上正常工作。我怀疑是权限问题。这些计算机也在 Active Directory 中运行。

我尝试使用 SysInternals 的 Process Monitor 查找一些信息,但是对我来说输出太高级了。我的应用程序的两次运行的进程监视器日志(1. 管理权限成功,2. 正常权限不成功)有超过 22k 行,我在进程监视器日志(干草堆)中找不到答案(针)。

我可以做些什么来确定我的应用程序在 Windows 7 中所需的权限?

0 投票
3 回答
3298 浏览

database - BDE 安装:驱动器 c 上没有足够的空间。无论如何都要安装到这个位置

我正在尝试通过从我的安装程序执行以下命令行来安装 BDE 引擎,如下所示。

它会弹出一条消息,请求允许在特定位置安装 BDE 引擎。当您单击确定按钮时,它会弹出另一条消息,如下所示。

在此处输入图像描述

我确实验证了我的硬盘中有足够的可用空间。当您单击 Yes 按钮时,它会成功安装 BDE 引擎。

我不知道为什么。另外,网上没有太多关于这方面的信息。

任何输入将不胜感激。

0 投票
1 回答
231 浏览

database - 使用多种数据库类型

我目前正在构建一个主要使用 ABSDatabase 的程序,但是我正在尝试从 BDE 配置中返回别名列表,我目前正在使用以下代码:

这只会带回 ABSDatabase 集的数据库名称,我怎样才能让它返回 BDE 别名?

谢谢。

0 投票
1 回答
1863 浏览

delphi - 将 Delphi BDE Paradox *.db 查询结果导出到文本文件?

如何将 Delphi BDE Paradox *.db 查询结果导出到文本文件?例如,我在 Borland Delphi 中使用 SQL Explorer 或 Database Dekstop,查询如下:SELECT * FROM mst_employee;

我希望文本文件中的查询结果说 mst_employee.txt 类似:

之前谢谢

0 投票
3 回答
14719 浏览

delphi - 使用 BDE Paradox 7 在 Delphi 7 中运行查询时出现“内存不足”

当我运行连接到 paradox 数据库 (*.db) 的程序时,它会显示类似project myprogram.exe raised exception class EDBEngineError with message Insufficient memory for this operation.

我使用DataSource1、Table1和Query1控件,将Query1的结果显示到DBGrid1,记录不大于100条记录,字段约为6个字段,数据库中只有1个表。但是 Query1 RequestLive 属性设置为 True。

我在网上搜索了解决方案,它表明我需要设置 BDE 管理员 INIT 选项卡以增加 ShareMemory 等。我设置 BDE 控件的初始化是否正常或可能有问题?

谢谢。

0 投票
3 回答
1001 浏览

delphi - 让 Woll2Woll 与 Delphi 7 dbExpress 一起工作的方法?

我的理解是Woll2Woll中的 Delphi 组件直接继承自BDE,我们正试图摆脱它以增加Windows 7的兼容性和稳定性。但我们希望保留TwwwDbGrid数据感知组件。

我见过一种产品(www.ethea.it),它声称使用模拟 BDE API 的工具使这变得“简单”。

我想知道是否有人对此或任何其他方法有任何经验或建议?我们不想重写所有内容。

谢谢!

0 投票
1 回答
649 浏览

delphi - TStoredProc 中的参数数量是否有限制?

TStoredProc ExecProc 调用中参数的数量或参数的总体大小是否有限制?

当前运行的系统仍在使用 BDE 连接到 Oracle,并且最近更改包过程的参数数量开始产生访问冲突。参数计数现在高达 291,并且正在 TStoredProc 的 ExecProc 调用中创建 AV。

如果我们从列表中删除单个参数(任何参数,不必是特定参数), ExecProc 调用就可以正常工作。

我已经通过代码进行了调试,并且使用 DBTables.pas 中的 TStoredProc.BindParams 过程引发了访问冲突。我设置了几个手表,其中一个是 SizeOf(FRecordBuffer),当我逐步执行此过程时,该值是 65535。这是 MaxWord (Windows.pas)。我没有看到 DBTables 代码中有任何指定的限制。

调用堆栈是 TStoredProd.ExecProc -> TStoredProc.CreateCursor -> TStoredProc.GetCursor -> TStoredProc.BindParams 并且在遍历 FParams 的 for 循环中引发访问冲突。

在此先感谢,我们需要找到可以查明的东西,以便我们可以避开。

0 投票
1 回答
13320 浏览

delphi - 德尔福 BDE 发行 $2501

可能重复:
Vista 上的 BDE 初始化失败(错误 $2501)

这些天来,我们的客户在尝试打开共享相同别名的两个应用程序实例时不断遇到错误代码为 $2501 的 BDE 问题

尝试初始化 Borland 数据库引擎时出错(错误 $2501)

但是如果关闭其中一个,或者只打开一个实例,问题就消失了。

而且我尝试配置 SHAREMEMSIZE 和 SHAREMEMLOCATION,但没有运气问题仍然存在。

有什么办法绕过它吗?