Comment Remplir les Données De la Base de données de datagridview et combobox - vb.net
J'ai besoin de Remplir les données de la base de données de mon Datagrid et deux Combobox.
J'ai 3 tables, "Tipo", "Marca" et "Modelo".
Le tableau "Modelo" deux clés étrangères de "Tipo" et "Marca".
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
CarregarDados()
End Sub
Private Sub CarregarDados()
cn.ConnectionString = "server=localhost;user id=root;database=automoveldb"
cn.Open()
'Load DataGridView
Try
With Cmd
.CommandType = CommandType.Text
.CommandText = "SELECT modelo.id Id, marca.Nome NomeMarca, tipo.Nome NomeTipo, modelo.Nome NomeModelo FROM modelo INNER JOIN Marca ON marca.id = modelo.IdMarca JOIN tipo ON tipo.id = modelo.IdTipo;"
.Connection = cn
End With
MsgBox(Cmd.CommandText)
With Da
.SelectCommand = Cmd
.Fill(dt)
dgvModelo.DataSource = dt
End With
Catch ex As Exception
MsgBox(ex.Message)
Finally
cn.Close()
End Try
'*************************
Try
With Cmd
.CommandType = CommandType.Text
.CommandText = "SELECT * FROM Tipo;"
.Connection = cn
End With
MsgBox(Cmd.CommandText)
With Da
.SelectCommand = Cmd
.Fill(dt)
cmbTipo.ValueMember = "Id"
cmbTipo.DisplayMember = "Nome"
cmbTipo.DataSource = dt
End With
Catch ex As Exception
MsgBox(ex.Message)
Finally
cn.Close()
End Try
End Sub
Mabase
Résultat de mon code
Ma zone de liste déroulante Type était rempli, mais ajouté dans le datagridview une nouvelle colonne, je ne veux pas qu'il
- Pourriez-vous nous expliquer quel est votre problème?
- êtes-vous une erreur? tous les DB objets utilisés il y a tout juste de sortir de nulle part sans être instanciées. ce DB êtes-vous à l'aide de
- Je ne peux pas charger les données de ma zone de liste déroulante, juste datagridview, je vais modifier attendre
- voir " chargement de la liste déroulante, est de cette manière que j'essaie de faire, mais, pas de travail!
- Si je fais de mon SQL like this -> "SELECT * from MODELO", Dans DatagridView, mes colonnes du spectacle "id", "idTipo", "idMarca", "Nome", mais je veux afficher le nom, pourquoi Rejoindre
- construire la requête dans un accès de sorte que vous pouvez affiner les résultats, puis copiez-le SQL de votre code
- Ma requête est "SÉLECTIONNEZ modelo.id id, marca.Nome NomeMarca, tipo.Nome NomeTipo, modelo.Nome NomeModelo DE modelo INNER JOIN Marca SUR marca.id = modelo.IdMarca REJOINDRE tipo SUR tipo.id = modelo.IdTipo;" Mais maintenant je ne sais pas, Dois-je reuze-il de nouveau?
Vous devez vous connecter pour publier un commentaire.
J'ai trouvé une solution pour ce problème, donc si quelqu'un veux remplir un datagrid et de contrôle combobox dans une même Fonction, faire: