如何从Access数据库中获取字符串?

时间:2011-06-14 18:08:55

标签: database vb.net ms-access

我已经获得了一个包含3列的Access数据库:名称,类别,电子邮件。我要做的是将所有与给定类别匹配的电子邮件作为字符串输出。

我对SQL有一点了解,因为我正在学习它。我已经设法制作了一些代码,用一些名字填充了一个可视网格

Dim comm As New OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source=.\AddressBook.mdb")
Dim addda As New OleDbDataAdapter("SELECT FirstName FROM Contacts", comm)
Dim dd As New DataTable("Name")
addda.Fill(dd)
DataGridView2.DataSource = dd

所以我觉得我已经相当接近,但我无法弄清楚如何将名字列表转换为字符串(或字符串数​​组)。我发现的所有在线教程和书籍似乎只是在数据视图中显示数据。

指向正确的方向?

2 个答案:

答案 0 :(得分:1)

试试这个:

Dim Names As New List(Of String)

Using comm As New OleDbConnection("Provider...")
  comm.Open()
  Using cmd As New OleDbCommand("SELECT FirstName FROM Contacts", comm)
    Using reader As OleDbDataReader = cmd.ExecuteReader
      While reader.Read
        Names.Add(reader("FirstName").ToString)
      End While
    End Using
  End Using
End Using

使用格式将自动处理您的数据对象。

答案 1 :(得分:0)

我确信LarsTech的回复会有效,但回到原来的例子,你可以随时循环访问DataTable( dd ),查看DataRow集合。

Dim Names As New List(Of String)
For Each R As DataRow In dd.Rows.Count
    Names.Add(R.Item("FirstName").ToString)
Next

然后你可以检查 Names 的数量,如果它大于0,则迭代该集合。