vb中2个datacombo控件联动

来源:百度知道 编辑:UC知道 时间:2024/05/17 02:34:45
数据库中有2个表,一个是zen(乡镇列表),一个是cun(村列表),第一个datacombo控件显示乡镇,选择后,第二个控件显示该乡镇的村,代码该如何设置?(下面是我的代码,属性设置部分有错误,请高手指正)
Option Explicit
Dim cn As adodb.Connection
Dim rs As adodb.Recordset

Private Sub Form_Load()
Set cn = New adodb.Connection
Set rs = New adodb.Recordset

cn.ConnectionString = "provider=microsoft.jet.oledb.4.0;" _
& "data source=" _
& "d:\my documents\lingaidangan.mdb"
cn.Open
rs.Open "select * from zhen", cn, adOpenStatic, adLockOptimistic
With DataCombo1(0)
Set .RowSource = rs
.ListField = "乡镇"
.BoundColumn = "乡镇编号"
Set .DataSource = rs
.DataField = "乡镇编号"
End With
End Sub
Private Sub DataCombo1_Change(Index As Integer)
If Index = 0 Then
rs.Close

关键是这一句错了
rs.Open "select * from cun ", cn, adOpenStatic, adLockOptimistic
而应该是
rs.Open "select * from cun where 乡镇编号='" & DataCombo1.List(index) & "'", cn, adOpenStatic, adLockOptimistic
当然前提是你“cun”这张表中有“乡镇编号”这个字段作为外键