[高分请教]三层结构中会出现重复查询数据的一个问题(200分)

  • 主题发起人 主题发起人 oldsheep35
  • 开始时间 开始时间
O

oldsheep35

Unregistered / Unconfirmed
GUEST, unregistred user!
首先先说结果:
用了TSQLMonitor来记录,发现类似于
“Select * From V_ORD_Meal Where RestaurantID = 2
SHOW INDEX FROM V_ORD_Meal
Select * From V_ORD_Meal Where RestaurantID = 2”
同样的一个查询语句出现两次,就是执行了两次查询。
再说说我的功能:
在中间层的接口中提供的一个方法 GetXXXX():Olevariant 返回查询的结果给客户端
TSQLDATASET.Close;
TSQLDATASET.Filtered := False;
TSQLDATASET.CommandText :='XXXX';
TSQLDATASET.Open;
Result := TSQLDATASET.Data;//将查询的记过返回。
客户端:
TCLIENTDATASET.DATA := GetXXX();
请了解这一部分的高手来解答一下。谢谢
 
filtered:= false会不会影响,你用一个新的试试ado试试,不用Filter
 
可能是这句激活了一次查询,TSQLDATASET.Filtered := False;你为什么不把它去掉试一下?
 
用的是dbExpress。不使用ADO。
我现在怀疑是不是数据库引擎的问题。
 
对此问题,这里已有答案,
http://greengrass.edu.topzj.com/thread-9370-1-1.html
 
谢谢楼上的。我看一下。
 
后退
顶部