Vb6 从文本框更新数据库记录时出错

Vb6 从文本框更新数据库记录时出错,vb6,Vb6,你好!我正在尝试使用文本框更新数据库中的信息。我通过以下方式获得记录的id: Dim dataID As String dataID = lblID.Caption rx.Open "SELECT * FROM tblclient WHERE ID = '& Trim$(dataID) &'", con, 3, 3 然后我检查该记录是否可用,但不幸的是,即使存在一条记录,也没有找到匹配的记录。这是我的第一个问题 If rx.EOF Then MsgBox "No mat

你好!我正在尝试使用文本框更新数据库中的信息。我通过以下方式获得记录的id:

Dim dataID As String
dataID = lblID.Caption
rx.Open "SELECT * FROM tblclient WHERE ID = '& Trim$(dataID) &'", con, 3, 3
然后我检查该记录是否可用,但不幸的是,即使存在一条记录,也没有找到匹配的记录。这是我的第一个问题

If rx.EOF Then
    MsgBox "No matching data"
Else
    MsgBox "There is a match"
End If
我的第二个问题是,我无法更新数据库中的信息,我正在使用这行代码,我知道我做得不对,但我似乎找不到任何解决方案,而且我对VB6非常陌生

With rx
 .Fields("Firstname") = txtFirstName.Text
.Fields("Lastname") = txtLastName.Text
 .Fields("District") = txtDistrict.Text
 .Fields("co_Maker") = txtCoMaker.Text
 .Fields("Address") = txtAddress.Text
 .Fields("Interest") = txtInterest.Text
 .Fields("ContactNo") = txtContactNo.Text
 .Update
End With
请有人帮帮我。 我正在使用VB6、MySQL数据库、ADO和datagrid

以下是我的总体代码:

    Private Sub cmdSavetest_Click()
    Set Connect = New Class1
    Set rx = New adodb.Recordset

    Dim dataID As String

    dataID = lblID.Caption

    rx.Open "SELECT * FROM tblclient WHERE ID = '& Trim$(dataID) &'", con, 3, 3

    If rx.EOF Then
        MsgBox "No matching data"
    Else
         MsgBox "There is a match"
    End If

     With rx
      .Fields("Firstname") = txtFirstName.Text
      .Fields("Lastname") = txtLastName.Text
      .Fields("District") = txtDistrict.Text
      .Fields("co_Maker") = txtCoMaker.Text
      .Fields("Address") = txtAddress.Text
      .Fields("Interest") = txtInterest.Text
      .Fields("ContactNo") = txtContactNo.Text
      .Update
    End With

    rx.Close
End Sub

SQL语句可能应该是:

"SELECT * FROM tblclient WHERE ID = '" & Trim$(dataID) & "'"
给你这句话:

rx.Open "SELECT * FROM tblclient WHERE ID = '" & Trim$(dataID) & "'", con, 3, 3
在对SQL语句进行故障排除时,可以将其转换为字符串变量,以便确保它在即时窗口(VB6 IDE中的Ctrl-G)中看起来良好:

您可以在
rx上添加断点(在要中断的行上按F9)。打开
行,将鼠标悬停在
sSQLStatement
变量上或在即时窗口中键入以下内容,检查
sSQLStatement
的值:

? sSQLStatement
至于第二个问题,我认为您只需要将
.Value
添加到
字段
属性:

With rx
    .Fields("Firstname").Value = txtFirstName.Text
    .Fields("Lastname").Value = txtLastName.Text
    .Fields("District").Value = txtDistrict.Text
    .Fields("co_Maker").Value = txtCoMaker.Text
    .Fields("Address").Value = txtAddress.Text
    .Fields("Interest").Value = txtInterest.Text
    .Fields("ContactNo").Value = txtContactNo.Text
    .Update
End With

很乐意帮忙!如果可以,请将问题标记为已回答。
With rx
    .Fields("Firstname").Value = txtFirstName.Text
    .Fields("Lastname").Value = txtLastName.Text
    .Fields("District").Value = txtDistrict.Text
    .Fields("co_Maker").Value = txtCoMaker.Text
    .Fields("Address").Value = txtAddress.Text
    .Fields("Interest").Value = txtInterest.Text
    .Fields("ContactNo").Value = txtContactNo.Text
    .Update
End With