需要跟踪 Firebird 2.5 上的大型更新语句

Need to trace a large update statement on Firebird 2.5

使用 Delphi 5 / Firebird 2.5

我从我们的遗留应用程序之一的更新语句中收到一条奇怪的错误消息。

value exceeds the range for valid timestamps

这是来自 Midas 连接,所以我无法真正控制更新 SQL 本身的生成,该项目也在使用 bpl,因此很难在 [=25= 中进行调试]的代码就像我们通常对单个exe项目所做的那样。

我查看了一些跟踪工具,但看起来 Firebird 本身以某种方式限制了跟踪的长度。

param29 = 整数,“”
...跳过了 88 个参数...

有没有办法从跟踪中获取更多信息 API 以查看这些跳过的值是什么?

您需要更改跟踪配置中的 max_arg_count 值。 Firebird 包含的默认配置文件使用 max_arg_count 30,这也是配置中未明确设置时的默认设置。

换句话说,如果您复制了默认配置,或者没有在跟踪配置中包含 max_arg_count,那么跟踪将显示最多 30 个参数 (0..29)。