【发布时间】:2018-03-05 17:45:33
【问题描述】:
我们有一个 Delphi 应用程序,它使用 Master/Detail 关系中的 ADO 数据集。它们连接到位于另一台服务器上的 SQL Server 数据库。
由于许多详细数据集在打开时会发出大量 SQL 请求,因此应用程序在网络连接速度较慢时速度较慢。有没有办法批量发出所有详细数据集请求?
或者除了 ADO 之外有没有可以更好地处理这种情况的数据集?
【问题讨论】:
-
首先,这不是主从相关数据集对象的行为方式。当请求 master 时,他们应该查询详细信息。所以你说在你的情况下所有主记录都要求详细信息?
-
您是否尝试为每个表使用
TClientDataSet? -
@Victoria 首先我们打开master,然后我们打开details。之前打开详细数据集并没有什么不同。仍然是相同数量的请求。
-
与 SqlServer + Ado 配合得很好的一件事是编写一个存储过程,它返回给定主服务器的所有详细记录。你试过吗?
-
@MartynA 详细数据集查询许多不同的表。并连接到不同的可视化编辑控件。这种方法还能管用吗?