delphi - 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 未分配。
我在这里想念什么?谢谢!
解决方案
推荐阅读
- ruby - 在填补空白的同时合并两个数组
- powershell - 即使设置了执行策略,Powershell 也不会运行脚本
- sql-server - HQL中设置两次的表字段在编译的SQL中只出现一次
- r - 合并具有重复标识符的行,同时添加其他列
- php - 用于显示数据库中的 Passers 的查询
- python - Python正则表达式括号匹配不返回正确的子字符串
- java - 使用java在邮件正文内容中获取问号符号
- javascript - 从 javascript 函数获取返回到 html 属性
- python - ValueError:输入在python中包含NaN
- android - React-Native 尝试运行 android,收到有关 /bin/sh 的错误:/usr/local/share/android-sdk/platform-tools/adb: No such file or directory