VB.NET如何从数据库到文本框获取行值(多行)

时间:2015-01-31 19:58:45

标签: database vb.net ms-access

我有这个代码(在网上找到它,甚至可能在stackoverflow上)

Dim SQL As String = "SELECT User FROM T1 WHERE User IS NOT NULL;"
Using con As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\db2.accdb")
    Dim command As New OleDbCommand(Sql, con)
    con.Open()

    Dim reader As OleDbDataReader = command.ExecuteReader()
    While reader.Read()
        TextBox1.Text = reader(0).ToString()
    End While
    reader.Close()
End Using

在我的数据库中,我有3个用户,但是当我运行此代码时,只有最后一个显示在文本框中。

让我们说我的桌子看起来像这样

User

one
two
three

但我的文本框仅显示"三"

如何导出和显示用户列中的所有行并用新行分隔?

如果这很容易,我想要一个列表框的代码。你知道,比如获取列名(使用sql查询),并且每行都在listview中创建一个新项。

PS:代码工作正常,只需要调整。我在vb.net中使用数据库已经有3天了,所以我的问题可能很简单,但对我来说仍然很困难。

谢谢。

1 个答案:

答案 0 :(得分:4)

  While reader.Read()
     TextBox1.Text &= reader(0).ToString() & Environment.NewLine 
  End While

还要确保设置TextBox1.Multiline = true