2012-03-18 14 views
0

データベースに挿入する最初の値である1つの値しか挿入できませんでした。 問題は、コンボボックスに1つ以上の値があることですが、最初のものだけが挿入されることです。アクセスデータベースの値をビジュアルベーシック2010のコンボボックスに挿入する方法

これは私が持っているコードです:あなたはDataReaderを使用している場合は

Dim query1 As New OleDbCommand(" SELECT MembrosCompasso.BI, MembrosCompasso.Ano FROM Compasso INNER JOIN MembrosCompasso ON Compasso.idCompasso = MembrosCompasso.idCompasso WHERE [email protected] ", con) 
     query1.Parameters.Add("@BI", OleDbType.VarChar).Value = BI.Text 
     Dim dr1 As OleDbDataReader = query1.ExecuteReader 

     Try 
      If dr1.HasRows Then 
       dr1.Read() 
       Ano.Items.Item.add(dr1("Ano")) 
      Else 
       MsgBox("Não exsitem registos!") 
      End If 
     Catch ex As Exception 
      ' tratamento de erros 
     Finally 
      dr.Close() 
      con.Close() 
     End Try 

答えて

0

、現在位置が1行であなたが.Readメソッドを呼び出すたびに進み、あなたは内のすべてのレコードを得ることはありません1回の呼び出しで読者。あなたのコードがより多くのように見える必要がありますので、あなたは、次のレコードに進めることができるかどうかを知るように、それが成功したかどうかがわかりますブール値を返しますRead

... 
If dr1.HasRows Then 
    'Loop around the reader until we run out of rows 
    While dr1.Read 
     'Add each rows' item to the combobox 
     Ano.Items.Item.add(dr1("Ano")) 
    End While 
Else 
... 
+0

それはP.Campos @ alote –

+0

のthnxいいえ問題を働いていません。左のチェックマークをクリックすることで、それを受け入れられた回答としてマークする必要があります。 – PhilPursglove

関連する問題