query1,datasource1,dbgrid1 主 query2,datasource2,dbgrid2 明细 假设主表中有一字段:name是明晰表的外键 query2.datasorece:=datasource1; query2.sql.text:='select * from b where student_name=:name'
在主表的afterScrol事件中更新从表内容
用两中方法可以解决: 1,写代码 从数据集控件.datasorece:=datasource1;(主数据源) 从数据集控件.sql.text:='select * from b where student_name=:name' 2,直接用控件 把从表数据集控件的DataSource设为连在主表的DataSource 然后在从表的数据集控件(如:clientdataset,query)MasterField属性上双击,进行字段关联设定。 有几个关联条件就可以设置几个关联!
delphi上有自带例子你看一下吧
另外他们sql语句的条件参数应相同
1.把从表(DataSet/Table/Query)的DataSource设为连在主表的DataSource(其DataSet属性设置的是主表的DataSet/Table/Query);
2.在从表的MasterField属性上双击,进行字段关联设定。
但都是一样的连接它们的从表DATESOURE 属性为主表中的DATASOURCE
query2,datasource2,dbgrid2 明细
假设主表中有一字段:name是明晰表的外键
query2.datasorece:=datasource1;
query2.sql.text:='select * from b where student_name=:name'
1,写代码
从数据集控件.datasorece:=datasource1;(主数据源)
从数据集控件.sql.text:='select * from b where student_name=:name'
2,直接用控件
把从表数据集控件的DataSource设为连在主表的DataSource
然后在从表的数据集控件(如:clientdataset,query)MasterField属性上双击,进行字段关联设定。
有几个关联条件就可以设置几个关联!