Ik ben nu bezig om een tree te laten genereren uit een database. Die database (MySQL) ziet er alsvolgt uit:
Het resultaat dat ik wil hebben is dat ik alle titels wil hebben waar een titel onderzit. Dit wou ik ook met SQL doen (zie dit topic) maar dat wil helaas niet met een query.
In dit voorbeeld wil ik dus het volgende resultaat bereiken:
Ik heb al een leuke sub gemaakt die zichzelf aanroept, maar volgens mij kan dit helemaal niet. De sub ziet er alsvolgt uit:
Please help me op weg. Thnx
code:
1
2
3
4
5
6
7
8
9
| ID Parent Titel 1 4 Titel4.1 2 3 Titel3.1 3 0 Titel3 4 0 Titel4 5 0 Titel5 6 5 Titel5.1 7 6 Titel5.1.1 |
Het resultaat dat ik wil hebben is dat ik alle titels wil hebben waar een titel onderzit. Dit wou ik ook met SQL doen (zie dit topic) maar dat wil helaas niet met een query.
In dit voorbeeld wil ik dus het volgende resultaat bereiken:
code:
1
2
3
4
| Titel3 Titel4 Titel5 Titel5.1 |
Ik heb al een leuke sub gemaakt die zichzelf aanroept, maar volgens mij kan dit helemaal niet. De sub ziet er alsvolgt uit:
code:
In deze code zal objCmdTree steeds veranderen en dus zal hij niet meer doorgaan in de parent loop. Per Child zou er dus een nieuwe Command aangemaakt moeten worden maar hoe doe je dit?1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| Private Sub DisplayChildren(Optional ByVal Parent As Integer = 0)
Dim objCmdTree As New OdbcCommand("SELECT * FROM Content WHERE Parent = ?", objConn)
objCmdTree.Parameters.Add(New OdbcParameter("", Parent))
Try
objConn.Open()
Dim TreeReader As OdbcDataReader
TreeReader = objCmdTree.ExecuteReader
While TreeReader.Read()
'oTree.Add("root", "a" & TreeReader.GetInt32(0).ToString, TreeReader.GetString(2))
testSTR = testSTR & TreeReader.GetString(2) & vbCrLf
DisplayChildren(TreeReader.GetInt32(0))
End While
Catch ex As Exception
End Try
End Sub |
Please help me op weg. Thnx