Combobox mit Daten aus einer MySQL Datenbank füllen

VB2010_ExpressUser

Grünschnabel
Hallo Leute.
Hab ein wahrscheinlich winziges Problem.
Ich wollte aus einer MySQL Datenbank eine COMBOBOX mit Daten füllen.

Code:
        Dim INI As New INIDatei
        INI.Pfad = My.Application.Info.DirectoryPath & "\DBaccess.ini"
        Dim server As String = (INI.WertLesen("Datenbankeinstellungen", "server").ToString)
        Dim user As String = (INI.WertLesen("Datenbankeinstellungen", "user").ToString)
        Dim password As String = (INI.WertLesen("Datenbankeinstellungen", "password").ToString)
        Dim database As String = (INI.WertLesen("Datenbankeinstellungen", "database").ToString)

        Dim DBconnectionstring As String = (("server=" & server & ";user=" & user & ";password=" & password & ";database=" & database).ToString)


        Dim conn As New MySqlConnection
        Dim myCommand As New MySqlCommand
        Dim myAdapter As New MySqlDataAdapter
        Dim myData As New DataTable

        conn.ConnectionString = DBconnectionstring

        Try
            conn.Open()
            myCommand.Connection = conn
            myCommand.CommandText = SQL
            myAdapter.SelectCommand = myCommand
            myAdapter.Fill(myData)

            For i As Integer = 0 To myData.Rows.Count - 1
                Name_der_Combobox.Items.Add(myData.Rows.Item(i))
            Next


        Catch myerror As MySqlException
            MessageBox.Show("Fehler beim Verbinden zur Datenbank: " & myerror.Message)
        End Try

Wenn ich das Programm dann ausführe bekomme ich zwar die Anzahl der Einträge aus der Tabelle aber nicht die Werte die da drin stehen sondern es kommt das hier zum Vorschein:
System.Data.DataRow
System.Data.DataRow
System.Data.DataRow
System.Data.DataRow
System.Data.DataRow

Da ich halt 5 Werte in der Tabelle habe kommt das 5 mal.

Ist bestimmt nur eine Kleinigkeit hoffe es kann mir da jemand helfen.

DANKE schonmal
 

Rene42

Erfahrenes Mitglied
Hi,

ich versuche wenn möglich einen Reader zu benutzen. Müsst dann wenn ich mich nicht irre, so aussehen

Code:
 Dim conn As New MySqlConnection
        Dim myCommand As New MySqlCommand
        Dim myAdapter As New MySqlDataAdapter
        Dim myReader As MySqlReader
        Dim i As integer 
 
        conn.ConnectionString = DBconnectionstring
 
        Try
            conn.Open()
            myCommand.Connection = conn
            myCommand.CommandText = SQL
            myReader = myCommand.ExecuteReader
 
            Do While myReader.Read
                 Name_der_Combobox.Items.Add(myReader.Item(i))
                 i+=1
            Loop

Hoffe das es so geht.

Gruß Rene42
 
Zuletzt bearbeitet: