ComboBox et SQL

loneliness06 Messages postés 5 Date d'inscription mardi 21 mars 2006 Statut Membre Dernière intervention 8 avril 2007 - 8 avril 2007 à 01:26
neo1602brice Messages postés 77 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 10 juillet 2009 - 8 avril 2007 à 11:41
Bonjour a tous,

nom de bd : "notes.mdb"
nom de la table : "notes"
nom du champs que je veux recupérer : "Scale"

J'ai un gros probleme je ne sais pas comment recuperer les champs de ma base de données dans ma combobox.
infos : Je passe par un composant, que j'additionne a mon projet.

voila la connexion :
Private

Sub UserControl1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.Load
'Get data from the database, put it into the DataTable object dt,

'and display the initial record's data in text boxes
Dim connStr AsString "Provider Microsoft.Jet.OLEDB.4.0;" & _

"Data Source = notes.mdb"

Dim sqlStr AsString = "SELECT * FROM notes"

Dim dataAdapter AsNew OleDb.OleDbDataAdapter(sqlStr, connStr)

dataAdapter.Fill(dt)

dataAdapter.Dispose()

UpdateTextBoxes()

End
Sub

et maintenant j'affiche dans mes différent textbox :

Sub
UpdateTextBoxes()

ComboScale.Text = CStr(dt.Rows(rowIndex)("Scale"))

txtScale.Text = CStr(dt.Rows(rowIndex)("Scale"))

txt1.Text = CStr(dt.Rows(rowIndex)("degree1"))

txt3.Text = CStr(dt.Rows(rowIndex)("degree3"))

txt5.Text = CStr(dt.Rows(rowIndex)("degree5"))

txt7.Text = CStr(dt.Rows(rowIndex)("degree7"))

End
Sub

Ce que je voudrais donc c de pouvoir avoir ma liste deroulante du champs scale dans ComboScale.

Pouvez vous m'aidez ?

Merci

2 réponses

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
8 avril 2007 à 05:16
Salut,

pour récupérer les valeurs de ton champs, il faut le préciser dans ta requête :
<strike>Dim sqlStr AsString = "SELECT * FROM notes"
</strike>Dim sqlStr AsString = "SELECT scale FROM notes"

Après pour parcourir les enregistrements, j'en sais absolument rien, pas encore en DotNet

@++

<hr width="100%" size="2" />
  --Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~
  
0
neo1602brice Messages postés 77 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 10 juillet 2009
8 avril 2007 à 11:41
Pour ma part, voilà comment je procède pour récuperer des données depuis une BD et les afficher dans une comboBox, j'utilise des recordset.IL faut pour cela cocher la réference Microsoft ActiveData Objet 2.*:


'Déclaration des variables
Public connexionADODB As New ADODB.Connection
public rsNote as new ADODB.recorset

'connexion à la Base de donnée
connexionADODB.Provider = "Microsoft.Jet.oledb.4.0"
connexionADODB.ConnectionString = App.Path + "\bdd\notes.mdb"
connexionADODB.Open

'requete SQL
rsNote.open "SELECT scale FROM notes", connexionADODB
'vérifie s'il y a un résultat
if rsNote.recordcount <> 0 then
   rsNote.moveFirst
   'répete l'opération tant que tous tes champs ne sont pas ajouté
   Do
      combo1.additem rsNote.fields("scale")
      rsNote.moveNext
   Loop until rsNote.EOF=true
endif
rsNote.close

Voilà, j'espère avoir correctement répondu à ta réponse
++
0
Rejoignez-nous