连接两个表,DBGrid1连的是ADO_Query1主表 ,DBGrid2连的是连的是ADO_Query2从表
主表字段 ID 是主键,从表字段 ID 是外键, 主从表一对多关系ADOquery1.sql 里的内容是:select * from table1
ADOquery2.sql 里的内容是:select * from table2 where ID =: StrID
ADOquery2.Parameters.ParamByName('StrID').Value := ADOquery1.FieldByName('StrID').Value;DBGrid1里的记录移动的时候,DBGrid2也跟着显示相关的信息,请问这个该怎么实现?
我知道是在ADO_Query1 ,AfterPost和AfterScroll事件里写,但怎么做都实现不了,哪位大哥帮帮忙,详细点,把完整的代码贴上来,谢谢了
主表字段 ID 是主键,从表字段 ID 是外键, 主从表一对多关系ADOquery1.sql 里的内容是:select * from table1
ADOquery2.sql 里的内容是:select * from table2 where ID =: StrID
ADOquery2.Parameters.ParamByName('StrID').Value := ADOquery1.FieldByName('StrID').Value;DBGrid1里的记录移动的时候,DBGrid2也跟着显示相关的信息,请问这个该怎么实现?
我知道是在ADO_Query1 ,AfterPost和AfterScroll事件里写,但怎么做都实现不了,哪位大哥帮帮忙,详细点,把完整的代码贴上来,谢谢了
解决方案 »
- TStrings追加数据问题
- 如何将“11/08/2005-RC410-SB450-PTRC-GC-00”字符串当遇到“/”“-”时,把它分开存到其它字符串变量中???
- 天方夜谈,能子类化QQ吗?
- 控制面板的网络编程问题
- 条码采集器(或是盘点机)的编程用什么软件? lod文件用什么?
- 动态创建子窗体时老提示No MDI Forms are currently active,
- 哪儿有deiphi7下载,请告诉一下。
- 放了一天了的一个参数的小问题都没人回答,请大家帮忙,(请帮忙Up).谢谢
- delphi搞ACCESS数据库,日期/时间字段的使用,和日期时间字段之间的时间差
- 在编写多层数据管理系统中要什么样的数据库才好呢?送分了!!!!
- 有人用过Pci16pr控件吗?
- 用wordapplication如何获得一个文档的页数?
重新刷新ADO_Query2的数据,或者干脆 ADO_Query2.Close();
ADOquery2.Parameters.ParamByName('StrID').Value := ADOquery1.FieldByName('StrID').Value;
ADO_Query2.Open();2.如果没有什么特别的需要,那就用TADOTable来代替ADO_Query2,
设置好TADOTable的MasterSource 、MasterFields 设置这个的方法不用说了吧,大家都知道~~~
ADOquery2.Parameters.ParamByName('StrID').Value := ADOquery1.FieldByName('StrID').Value;这句应该改为
ADOquery2.Parameters.ParamByName('StrID').Value := ADOquery1.FieldByName('ID').Value;
StrID不是数据库字段名,是变量来的
我用这种方法做,出现如下错误信息:ADO_Apply2 : Parameter 'StrID' not found
为什么啊? StrID不是数据库字段名,是变量来的
ADOquery2.sql 里的内容是:select * from table2 where ID =: StrID
adoquery2.datasource:=Datasource1;
adoquery1.active:=true;
adoquery2.adotive:=true;
>>>StrID不是数据库字段名,是变量来的
>>>我用这种方法做,出现如下错误信息:>>>ADO_Apply2 : Parameter 'StrID' not found
>>>为什么啊? StrID不是数据库字段名,是变量来的变量不能直接,写在''之中,要这样ADOquery2.Parameters.ParamByName(StrID).Value := ADOquery1.FieldByName('ID').Value;
ADOquery2.sql 里的内容是:select * from table2 where Single=: Single_No
adoquery2.datasource:=Datasource1;这样就搞定了~~`没你想像的这么麻烦