首页 > 解决方案 > FireDAC TFDTable.Post 与 TFDQuery UPDATE 子句提交

问题描述

在 Delphi 10.2 中使用 FireDAC 到 Firebird 2.5 数据库,看到我不理解的行为。

我打开一个 TFDTable,找到所需的记录,调用 Edit 并更新该记录中的某些字段,然后调用 Post。如果在执行此操作之后并且程序仍在运行并且数据库连接打开时,我在 FlameRobin 或其他外部数据查看器中打开数据库并查看表,我发布的更改在该外部查看器中不可见并且不在程序终止时关闭数据库连接之前变得可见。如果我改为使用 TFDQuery 和普通事务处理来通过 SQL 语句更新相同的字段,则在提交事务并刷新外部视图后,更改会立即在外部查看器中可见。

TFDTable.CachedUpdates 和 Exclusive 都是 False;Fetch、Field 和 Update 选项为默认值;并且 UpdateObject 和 UpdateTransaction 未分配。

我在这里想念什么?谢谢!

标签: delphifiredac

解决方案


推荐阅读