Combobox füllen mit Daten aus MySQL
Ich versuche zu füllen meiner combobox mit Daten aus einer Tabelle in mysql, hier ist mein code, ich kann nicht sehen, was das Problem ist. Meine combobox nicht wieder alle Daten, es ist einfach leer.
Private Sub cbxCompanyName_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles cbxCompanyName.SelectedIndexChanged
Dim con As New MySqlConnection
Dim constr As String = "Server=localhost;database=ba-solutions;user id=root;password="
Try
con.ConnectionString = constr
con.Open()
Catch ex As SqlException
MsgBox(ex.Message)
End Try
Dim StrSql As String = "SELECT Company Name FROM client_details"
Dim cmd As New MySqlCommand(StrSql, objconnection)
Dim da As MySqlDataAdapter = New MySqlDataAdapter(cmd)
Dim dt As New DataTable("Client_details")
da.Fill(dt)
If dt.Rows.Count > 0 Then
cbxCompanyName.DataSource = dt
cbxCompanyName.DisplayMember = "Company Name" 'What is displayed
End If
End Sub
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen, diese
cbxCompanyName.SelectedIndexChanged
Ereignis, vielleicht sollten Sie, um den code zuForm.Load
Veranstaltung statt.Versuchen Sie, Diese..!
Wenn dt.Zeilen.Count > 0, Dann
Sie sql-Befehl text ist falsch. Wenn Sie Leerzeichen in den Spaltennamen oder Tabellennamen solltest du den Namen in einen besonderen Charakter, grenzt den start und das Ende der Spalte name.
For MySql das Sonderzeichen ist das Graviszeichen (gedrückt halten ALT und drücken Sie 096 auf der numerischen Tastatur).
Natürlich wäre es viel besser, zu vermeiden, diese Räume überhaupt.
Wenn es nicht zu spät, ich schlage vor zu ändern, dass die Spalte name entfernen Sie das Leerzeichen
frmClientDetails.DGVClient.Columns(0).HeaderCell.Value = "Company Name"
frmClientDetails.DGVClient.Columns(0).HeaderText = "Company Name"
?Private Sub cbxCompanyName_SelectedIndexChanged(Absender Als System.Gegenstand, e Als System.EventArgs) Griffe cbxCompanyName.SelectedIndexChanged
Dim con As New MySqlConnection
Dim KONSTR As String = "Server=localhost;database=ba - - - Lösungen;user id=root;password="
Versuchen
con.ConnectionString = KONSTR
con.Öffnen Sie()
Catch ex As SqlException
MsgBox(ex.Nachricht)
End Try
Dim dr As OleDbDataReader=cmd.ExecuteReader
End Sub
Alle der oben genannten ist richtig, wenn die überführung in eine combobox, aber eins wird weggelassen. Um sofort Zugriff auf die Liste der Start-index muss gesetzt werden für die ausgewählten Positionen, oder kehren Sie den Inhalt von 'System.Daten.DataRowView", Wann immer Sie gehen, erfassen Sie den Inhalt von ComboBox1.Text.
Diesem Beispiel wird eine combobox mit den Bild-Datei-Namen, und zieht Sie vom server-Standort. Ich wollte Vorspannung das erste Bild aus der combobox rechts nach füllte ich es aus einer MySql und lief in dieses Problem, da der index für die Auswahl wird nur ausgelöst, wenn der Benutzer klickt auf die combobox, nicht, wenn Daten geladen sind.
Versuchen, diesen Code ich hoffe, dass es funktionieren sollte