считыватель данных в vb.net - PullRequest
0 голосов
/ 16 июля 2010

Пожалуйста, помогите, как сделать цикл while эквивалентным этому циклу for. Чтобы я мог читать из одной строки таблицы базы данных mysql и отображать ее в выпадающем списке в vb.net.

Я использую этот код, но он определенно бесполезен, если в строке добавлено 3 или более элементов:

Dim i As Integer
        Dim rdr As Odbc.OdbcDataReader
        rdr = con.readfrom_drug_type_table()
    For i = 0 To 1
        If rdr.HasRows = True Then
            rdr.Read()

            ComboBox2.Items.Add(rdr("Drug_type"))
        End If
    Next i

Я хочу прочитать все данные из этой строки Drug_type Пожалуйста, помогите, спасибо

Ответы [ 2 ]

2 голосов
/ 16 июля 2010

@ pranay Вам не нужны вложенные циклы.

Try
    myConnection = New SqlConnection("server=localhost;uid=sa;pwd=;database=pubs")
    myConnection.Open()
    myCommand = New SqlCommand("Select * from discounts", myConnection)
    dr = myCommand.ExecuteReader()
    While dr.Read()
        WriteLine(dr(0))
        WriteLine(dr(1))
        WriteLine(dr(2))
        WriteLine(dr(3))
        WriteLine(dr(4))
    End While
    dr.Close()
Finally
    myConnection.Close()
End Try
2 голосов
/ 16 июля 2010

Если вы хотите прочитать только первую строку, чем просто использовать

If rdr.Read() Then 
     ComboBox2.Items.Add(rdr("Drug_type")) 
End If 

Обновление

Try
    myConnection = New SqlConnection("server=localhost;uid=sa;pwd=;database=pubs")
    'you need to provide password for sql server
    myConnection.Open()
    myCommand = New SqlCommand("Select * from discounts", myConnection)
    dr = myCommand.ExecuteReader

        While dr.Read()
            WriteLine(dr(0))
            WriteLine(dr(1))
            WriteLine(dr(2))
            WriteLine(dr(3))
            WriteLine(dr(4))
            ' writing to console
        End While
Catch
End Try
dr.Close()
myConnection.Close()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...