master\detail表的实现!!!??
我的窗体里有两个datagrid控件,我想从已知的access数据库里调用两张表,这两张表属于master\detail关系,使在主表中移动指针时,子表自动跟随变化。可是我有了如下代码后,在主表中移动指针,子表并未随着变化,怎么回事?
Private Sub Adodc4_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
With Adodcdetail.RecordSource = "select * from pipe where 管线交接单编号='" & Adodc4.Recordset("管线交接单编号") & "'"
Adodcdetail.Refresh
End With
End Sub
Private Sub Form_Load()
Adodcdetail.ConnectionString = "dsn=pb"
Adodcdetail.CommandType = adCmdText
Adodcdetail.RecordSource = "select * from pipe"
Set DataGriddetail.DataSource = Adodcdetail
Adodc4.ConnectionString = "dsn=pb"
Adodc4.CommandType = adCmdText
Adodc4.RecordSource = "select * from box "
Set DataGridmaster.DataSource = Adodc4
End Sub
问题点数:50、回复次数:6Top
1 楼zjxgold(稻草人)回复于 2003-02-03 10:22:55 得分 0
你建立关联了吗?
代码好象没什么问题Top
2 楼zjxgold(稻草人)回复于 2003-02-03 10:24:43 得分 0
必须在sql中指明关联
你可以去查sql的书有这方面的东东Top
3 楼susanxiaoshan()回复于 2003-02-03 11:08:12 得分 0
怎么建立关联阿?请指教?Top
4 楼chenxin790311(鱼)回复于 2003-02-07 20:01:55 得分 0
你在主表移动事件中Adodcdetail refresh后在用Set DataGriddetail.DataSource = Adodcdetail,看一下,我估计是控件没有刷新Top
5 楼susanxiaoshan()回复于 2003-02-09 21:34:49 得分 0
照你那样做了以后,在主表中移动指针,子表还是未随着变化阿!!
求教高手!!!
Top
6 楼chenxin790311(鱼)回复于 2003-02-10 15:30:32 得分 50
Private Sub Adodc4_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
With Adodcdetail.RecordSource = "select * from pipe where 管线交接单编号='" & Adodc4.Recordset("管线交接单编号") & "'"
Adodcdetail.Refresh
End With
End Sub
你只要把上面的with和end with去掉就可以了,还有就是form-load里面的Adodcdetail.RecordSource = "select * from pipe"这句话也可以不用写了
给我加分吧:)Top




