我在用 kbmMemTable 和 TAdoQuery 做一个项目, 后面要用到 kbmMemTable.Locate("字段名","要找的值",[]);  这句时一直出现内存错误,我用了多个 kbmMemTable 版本,并且在 BCB 5 环境下试了也一样出错.但发现 kbmMemTable 自带的 Demo 却不出错. 进一步发现 kbmMemTable 自带的 Demo 是用的 BDE 数据集就不会出错, 而我用的是 Ado 组件.请问哪位前辈有解决办法, 问题解决另开2帖给分.

解决方案 »

  1.   

    用TClientDataSet 没具体用过.kbmMemTable 很方便,只要    ADOQuery1.Close();
       ADOQuery1.Open();
       mykbmMemTable.LoadFromDataset(ADOQuery1, [mtcpoStructure,mtcpoProperties]);
       ADOQuery1.Close();
    后面就可与 AdoQuery 等控件一样,只是 数据库联结 完全可以断开,正好满足项目需要.
      

  2.   

    第三方控件少用的好.TClientDataSet 可以了,还是用  自带的 TClientDataSet 好.