【问题标题】:Getting data from Access table using VB6使用VB6从Access表中获取数据
【发布时间】:2014-09-15 19:19:38
【问题描述】:

我知道这是一个初学者的问题,但是从 VB.NET 和 VB6 来回切换有时会让我感到困惑。我正在尝试从我创建的 Access 表中检索电子邮件地址,并将它们存储在字符串中以备后用。这是我目前所拥有的;

Private Sub cmdSubmit_Click()
    Dim MyConn As New ADODB.Connection
    Dim MyRecSet1 As New ADODB.Recordset
    Dim EmailList As String
    Set MyConn = New ADODB.Connection

    EmailList = ""

    MyConn.ConnectionString = "Some String"

    MyConn.Open

    Set MyRecSet1 = MyConn.Execute("SELECT DISTRIBUTION_LIST.[EMAIL_ADDRESS] FROM DISTRIBUTION_LIST")

    EmailList = MyRecSet1!EMAIL_ADDRESS

    MyConn.Close

    lblHeadDesc.Caption = EmailList

End Sub

我可以获取 1 个电子邮件地址,但我想全部获取。

【问题讨论】:

  • EmailList 设为Variant 而不是String 并将EmailList = MyRecSet1!EMAIL_ADDRESS 更改为EmailList = MyRecSet.GetRows
  • 那如何将Variant类型转换为String类型以备后用呢?
  • 总是有CStr() 函数,但我不确定你用它们做什么。我的建议有效吗?
  • 我还不确定,但我不断收到类型不匹配错误。一旦我将它转换为字符串,我就可以在标题中显示它。
  • 将 MyConn 调暗为新的 ADODB.Connection 调暗 MyRecSet1 作为新的 ADODB.Recordset 调暗 VarList 作为变体调暗 EmailList 作为字符串 Set MyConn = New ADODB.Connection Set MyRecSet1 = MyConn.Execute("SELECT DISTRIBUTION_LIST.[EMAIL_ADDRESS ] FROM DISTRIBUTION_LIST") VarList = MyRecSet1.GetRows MyConn.Close EmailList = CStr(VarList)

标签: ms-access vb6


【解决方案1】:

读取时,可以通过循环获取所有行,直到设置了EOF:

Do While Not MyRecSet1.EOF
  EmailAddress = MyRecSet1!EMAIL_ADDRESS
  'Do something with EmailAddress
Loop

【讨论】:

    【解决方案2】:

    我可能误解了你的问题,但听起来你想要 Recordset 的 GetString() 方法:

    With MyConn.Execute("SELECT EMAIL_ADDRESS FROM DISTRIBUTION_LIST", , adCmdText)
        EmailList = .GetString(adClipString, , , vbNewLine)
        .Close
    End With
    MsgBox EmailList
    

    【讨论】:

      【解决方案3】:
      For i = LBound(VarList, 2) To UBound(VarList, 2)
          For j = LBound(VarList, 1) To UBound(VarList, 1)
              EmailList = EmailList + VarList(j, i) & ", "
          Next j
      Next i
      

      获取所有电子邮件地址。

      感谢 OverMind 的帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-06-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-03-26
        • 2010-09-17
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多