cs_VanHouten
Messages postés2Date d'inscriptionjeudi 17 novembre 2005StatutMembreDernière intervention16 juillet 2012
-
15 oct. 2008 à 16:34
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 2014
-
15 oct. 2008 à 21:56
Bonjour,
j'ai actuellement un petit prob.
j'essaye de remplir deux combobox avec les instructions ci-dessous.
2 solutions l'une fonctionne correctement, mais je voudrais pouvoir utiliser l'autre (mise en commentaire dans l'exemple)
code ci-dessous :
Imports System
Imports System.Data
Imports System.Data.OleDb
Imports Microsoft.VisualBasic
Imports System.Windows.Forms
Public Class Form1
Inherits System.Windows.Forms.Form
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim MyConnexion As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=insee.mdb")
Dim Mycommand As OleDbCommand = MyConnexion.CreateCommand()
Dim Mycommand1 As OleDbCommand = MyConnexion.CreateCommand()
' deux bases l'une contient les villes, l'autre le noms des dep.
'Mycommand.CommandText = "SELECT VILLE FROM INSEE""+""SELECT NDEP FROM DEPT " <---- problème ici surement
Mycommand.CommandText = "SELECT VILLE FROM INSEE"
Mycommand1.CommandText = "SELECT NDEP FROM DEPT"
MyConnexion.Open()
'solution qui ne fonctione pas en commentaire ? POURQUOI!!!
Dim myReader As OleDbDataReader = Mycommand.ExecuteReader()
' --- trouvé sur forum Microsoft ---------
'Dim nextResult As Boolean = True
'Do Until Not nextResult
'ComboBox1.Items.Add(myReader.GetString(0))
'Do While myReader.Read()
'ComboBox2.Items.Add(myReader.GetString(0))
'Loop
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 15 oct. 2008 à 21:56
Pourquoi ?
Tout simplement parce que tu ne peux pas exécuter 2 requettes renvoyant des résultants dans la même commande, il faut que tu les exécute l'une après l'autre
ExecuteReader n'est capable de te renvoyer qu'un jeu de résultat à la fois.