使用 GUI 显示 SQL 查询与新查询的结果?

Use GUI displayed results of SQL query vs new queries?

我正在开发一个程序,其中包含一个数据库和一个显示部分数据库的 GUI。

假设我有一个文本块,其中包含来自数据库的数据(通过查询找到)。如果我想在程序的其他地方使用这个文本块的值,我应该从文本块中读取它,还是从数据库中再次调用它更好?

换句话说,就性能和可维护性而言,可以使用 GUI 显示的 SQL 查询结果作为其他功能的输入,而不是进行新查询吗?

这里有几点需要考虑:

  • 过时 data/concurrency。如果多个 people/processes 在同一个数据库对象上工作,长时间在 GUI 中保存相同的数据可能会导致数据陈旧,即显示的数据陈旧且与数据库中的实际数据不同步。这可能会导致更新数据时出错。

  • 耦合。在多个 GUI 组件之间共享状态可能会导致维护噩梦,因为您无法在不影响 GUI 的另一部分的情况下更改 GUI 的一部分。

  • 性能。网络速度很快。针对优化数据库的优化查询 运行 速度很快。因此,重用查询数据带来的性能增益不应太高。并且可能不足以证明不从数据库中重新获取数据是合理的,请参考其他要点。