主从表的查询问题

Aioros 2004-12-03 02:22:46
主表用Adodatset 从表用Adotable
我在对主表进行查询(用Adodatset的CommandText写SQL语句来查询)的时候遇到这样的问题
如果我查询的结果只有一条记录并且这条记录是第一条的时候
从表变成了显示全部的记录 而不是显示主表所对应的记录;
不知道我这样说大家明白没??
这问题要怎么解决??
今天做了半天都没搞定 ~~~
兄弟们帮帮忙啊 ~~

...全文
164 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
JonnySun 2004-12-03
  • 打赏
  • 举报
回复
給你貼段代碼,其實至少有兩種方法可以實現你的功能.
下面是我寫的系統中實現了查詢從表的數據, 是其中之一
在主表的AfterScroll內查詢從表的數據.
GetDetailRecords()用來獲取從表的數據. 你可以直接寫代碼比如
commandtext:='select * from xxx_detail where code=' + 主表的主鍵

================

procedure TMasterData.OnAfterScroll(DataSet: TDataSet);
begin
if FBillOwner.DetailDataSet.Active then
begin
FBillOwner.Detail.GetDetailRecords();
FBillOwner.SetBillState;
end;
if Assigned(FBillOwner.DataObserver) then FBillOwner.DataObserver.SendNotify();
end;
Aioros 2004-12-03
  • 打赏
  • 举报
回复
应该没有问题
我只有在查询的结果只有一条记录并且这条记录是第一条的时候才出现问题
其他的都一切正常~~
whythinkwhy 2004-12-03
  • 打赏
  • 举报
回复
你的查询语句没有问题吗?
Aioros 2004-12-03
  • 打赏
  • 举报
回复
怎么用datasource关联两个数据集??
Aioros 2004-12-03
  • 打赏
  • 举报
回复
但是为什么只有在查询的结果只有一条记录并且这条记录是第一条的时候
才有问题???
其他的情况都没有事
thunderniao 2004-12-03
  • 打赏
  • 举报
回复
你只有用datasource关联两个数据集,不要用adotable
thunderniao 2004-12-03
  • 打赏
  • 举报
回复
adotable 默认是显示所有记录的
postfxj 2004-12-03
  • 打赏
  • 举报
回复
都用adoquery或都用adodataset不行嗎?

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧