哪位朋友能帮个忙呀,什么叫做“分层结构的 Recordset”呀,急急急急急!!!!!

解决方案 »

  1.   

    http://blog.csdn.net/smile2me27/archive/2004/07/01/31423.aspx
      

  2.   

    Option Explicit
        
        '  声明ADODB.Connection和ADODB.Recordset对象变量
        Dim conn As ADODB.Connection
        Dim rs As New ADODB.Recordset
        
        Private Sub Command1_Click()
            Dim sql As String
            '  实例化Connection 对象
            Set conn = New ADODB.Connection
            '  设置连接提供者名称
            conn.Provider = "MSDataShape"
            '  设置连接字符串
            conn.ConnectionString = "Provider=MSDataShape;Data Source=C:\Program Files\Microsoft Visual Studio\VB98\Nwind.mdb; Data Provider=Microsoft.Jet.OLEDB.4.0"
            '  打开到数据源的连接
            conn.Open
            'shape指令
            sql = "SHAPE {SELECT * FROM Orders} AS Orders " + _
                                 "APPEND ({SELECT * FROM [Order Details]}  AS detail " + _
                                 "RELATE 'OrderID' TO 'OrderID') AS detail"
            '  在分级 Recordset对象中当父行位置更改时,对基本子记录的引用是也更改。
            rs.StayInSync = True
            '  打开游标
            rs.Open sql, conn
            '  设置MSHFlexGrid控件数据源
            Set MSHFlexGrid1.DataSource = rs
        End Sub
        
        '  释放相应的资源
        Private Sub Command2_Click()
            rs.Close
            Set rs = Nothing
            conn.Close
            Set conn = Nothing
            End
        End Sub
        
        Private Sub MSHFlexGrid1_RowColChange()
        With MSHFlexGrid1
            MsgBox .TextMatrix(.Row, .Col)
        End With
    End Sub