还有一个数据筛选的有关问题有关问题

还有一个数据筛选的问题问题
如下的表:
PartNum OldPartNum (表示当前的PartNum是由OldPartNum转来的文件)
E0001 E0003
E0003 E0002
A0003 S0003
E0002 A0003
B0003 B0001
B0001 B0005
B0005 E0002

要求如果查询E0001,应该为如下记录(表示一系列变更的记录)
OldPartNum PartNum
S0003 A0003  
A0003 E0002
E0002 E0003  
E0003 E0001  

如何查询并检索出数据并显示在DataGrid中,请各位帮帮忙!!谢谢!

------解决方案--------------------
定义一个空的记录集,递归查询,然后记录添加到这个记录集. 
完了之后DataGrid绑定到这个记录集.(顺便写个雏形给你:)
VB code
Dim rs2 As ADODB.Recordset
    Call rs2.Fields.Append("PartNum", adVarChar)
    Call rs2.Fields.Append("OldPartNum", adVarChar)
    
Private Sub listDataSource(ByVal vData As String)
    Dim rs As ADODB.Recordset
    With rs
        Set rs = New ADODB.Recordset
        Set .ActiveConnection = Cn
        .CursorLocation = adUseClient
        .CursorType = adOpenStatic
        .LockType = adLockReadOnly
        .Open "select * from 表1 where PartNum ='" & vData & "'"
        If Not .EOF Then
            rs2.AddNew
            rs2.Fields(0).Value = .Fields("PartNum").Value
            rs2.Fields(1).Value = .Fields("OldPartNum").Value
            rs2.Update
            
            listDataSource (.Fields("OldPartNum"))
        End If
        .Close
    End With
    Set rs = Nothing
End Sub