我使用两个ADOTable来表示数据的Master/Detail关系。在ADOTable查询时发现,主表使用Locate函数可以找到相应记录,但是从表对Locate函数没响应,并且ADOTable中没有类似TTable中的FindKey等函数。请问:1、是不是ADOTable主从关系中的从表不可用来查询?      2、我怎样才能在保持master/detail显示的条件下,对从表可以查询?

解决方案 »

  1.   

    难道真的需要用ADOQuery来重新做Master/detail吗?
      

  2.   

    没道理的,adotable和adoquery都是从adodataset继承下来的,对于locate效果一样的...肯定是你做的有问题...你将两个表连为主从以后,随着主表的记录移动,从表会显示相关联的数据,这时你要是想定位到从表中的其他记录肯定是没戏,因为库里虽然有,但数据集里没有。但是你locate关联的数据应该没问题的。
      

  3.   

    to liangzisiyun(良子) ******************************
    主从表的对应关系,可能是一对多,这个时候,就定位不了了。
    ******************************你试过吗?我刚才试了一下,没有你说的定位不了的问题...
      

  4.   

    给个建议,你主表使用 adotable
    然后从表根据主健, 使用adoquery 来进行查询,肯定没有问题我做过的 ,没有问题,在主表的dbgrid的 鼠标双击事件中调用 你编写的过程
      

  5.   

    从表确实无法locate,即使是从表中显示的数据。TO xiaoyuer0851(红旗下的蛋) :我现在就是这样做的,但是时间上明显比原来的主从表时间长,当记录比较多时,我想可能就无法忍受了。