我正在开发一个程序,其中包含一个显示数据库部分的数据库和GUI。
假设我有一个包含数据库数据的文本块(通过查询找到)。如果我想在程序中的其他地方使用此文本块的值,我应该从文本块中更好地读取它,还是第二次从数据库中调用它?
换句话说,就性能和可维护性而言,使用GUI显示的SQL查询结果作为其他函数的输入而不是进行新的查询是否正常?
答案 0 :(得分:2)
这里有几点需要考虑:
陈旧的数据/并发。如果多个人/进程在同一个数据库对象上工作,则长时间在GUI中保留相同的数据可能会导致过时的数据,其中显示的数据是旧的,与数据库中的实际数据不同步。这可能会在数据更新时导致错误。
耦合。多个GUI组件之间的共享状态可能导致维护噩梦,因为您不能更改GUI的一部分而不会对GUI的另一部分产生影响。
性能。网络很快。针对优化数据库运行的优化查询很快。因此,重用查询数据所带来的性能提升不应该太高。并且可能不足以证明不从数据库中重新获取数据,参考其他要点。