Zwei Tabellen in der Listbox anzeigen

  • VB.NET

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Zwei Tabellen in der Listbox anzeigen

    Hallo zusammen,
    brauche Unterstützung bei folgender Sache:
    Ich habe 2 Tabellen in der Datenbank "Gesellen" und " Baustelle"
    In der ersten Listbox kann ich die Namen der Gesellen auflisten.
    Klick ich in der Listbox1 die Namen an, sollte die Listbox2 mir das Datum und die
    Stunden anzeigen.
    Was mache ich falsch ?

    Private
    Sub ListBox1_SelectedIndexChanged(ByVal sender As
    System.Object, ByVal
    e As System.EventArgs)
    Handles ListBox1.SelectedIndexChanged

    cmd.CommandText = "select * from Gesellen" &

    " where GesellenID = "
    & pnummer(ListBox1.SelectedIndex)

    Try
    con.Open()
    reader = cmd.ExecuteReader()
    reader.Read()
    txtName.Text = reader("Namen")
    txtID.Text = reader("GesellenID")
    reader.Close()
    Catch ex As Exception
    MessageBox.Show(ex.Message)
    End Try
    con.Close()


    Try
    cmd.CommandText = "select * from Gesellen, Baustelle "
    " where GesBauID order by Datum, Stunden "
    con.Open()
    reader = cmd.ExecuteReader()
    ListBox2.Items.Clear()
    Do While reader.Read
    ListBox2.Items.Add(reader("Datum") &reader("GesBauID") &
    reader("Stunden"))
    Feldgroessez = 0 '***Nullstellung wichtig
    Feldgroessez = Feldgroessez + reader("BauID") '***zeigt immer die höchste vorhandene Nummer***
    Loop
    txtBauID.Text= ""
    txtBauID.Text = Feldgroessez
    reader.Close()
    Catch ex As Exception
    MessageBox.Show(ex.Message)
    End Try
    con.Close()
    End Sub
    Sowas ist aus datenbänkerischer Sicht eine m:n - Relation, und anners sollte man da auch nicht rangehen.

    Also erstmal die relationale GrundIdee verdauen, und mal mit rumspielen.

    Geselle -> Einsatz <- Baustelle

    ist tatsächlich eine ausgezeichnete Übung - sehr anschaulich.

    Als nächstes gehts drum, solch Daten zu laden und zu speichern Daten laden, speichern, verarbeiten, und eigentlich erst danach kann man sinnvoll in Angriff nehmen, einen m:n-View aufzubauen, wie du ihn dir vorstellst (nämlich Einsätze (inkl. Einsatzorte) nach Gesellen).
    Das KnowHow dazu findet sich auf vier Views-Videos

    Wobei - konkret hast du ja nur nach einem ParentChild-View gefragt - wie gesagt: Die Einsatzorte mit anzuzeigen wäre gewissermaßen eine Dreingabe.

    Achso - dein Code habich jetzt keines Blickes gewürdigt (gugge die Tuts, dann verstehst du warum), aber um sowas lesbar zu kriegen: Bitte VB-Tag benutzen - aber richtig

    Edit: Und Hallo! überhaupt ;)