0

これは私が取り組んでいるものです。患者数が 0 の場合は機能しますが、1 と仮定して増加すると、「UPDATE または DELETE クエリに複数値フィールドが含まれていません」というエラーが発生します。何が問題なのですか、助けてください。どうもありがとうございました。

rs = New ADODB.Recordset
    With rs
        .Open("Select * from Doctor where DName='" & cmbDoctors.Text & "'", cn, 2, 3)

        If .Fields("Patients").Value = 10 Then
            MsgBox("All appointments had been taken. Please Select another Doctor.")
            Exit Sub
        End If
        patient = Txtname.Text
        If .Fields("Patients").Value = 0 Then
            .Fields("Patient0").Value = patient
        ElseIf .Fields("Patients").Value = 1 Then
            .Fields("Patient1").Value = patient
        ElseIf .Fields("Patients").Value = 2 Then
            .Fields("Patient2").Value = patient
        ElseIf .Fields("Patients").Value = 3 Then
            .Fields("Patient3").Value = patient
        ElseIf .Fields("Patients").Value = 4 Then
            .Fields("Patient4").Value = patient
        ElseIf .Fields("Patients").Value = 5 Then
            .Fields("Patient5").Value = patient
        ElseIf .Fields("Patients").Value = 6 Then
            .Fields("Patient6").Value = patient
        ElseIf .Fields("Patients").Value = 7 Then
            .Fields("Patient7").Value = patient
        ElseIf .Fields("Patients").Value = 8 Then
            .Fields("Patient8").Value = patient
        ElseIf .Fields("Patients").Value = 9 Then
            .Fields("Patient9").Value = patient
        End If
        .Fields("Patients").Value += 1
        .Fields("Fees").Value += txtAmount.Text
        .Update()
        .Close()
    End With
4

1 に答える 1

0

これを試して

rs = New ADODB.Recordset
  With rs
    .Open("Select * from Doctor where DName='" & cmbDoctors.Text & "'", cn, 2, 3)

    If .Fields("Patients").Value = 10 Then
        MsgBox("All appointments had been taken. Please Select another Doctor.")
        Exit Sub
    End If
    patient = Txtname.Text

    ' filter here that input is 0 to 9

    .Fields("Patient" & trim(.Fields("Patients").Value)).Value = patient

    .Fields("Patients").Value = .Fields("Patients").Value + 1
    .Fields("Fees").Value = .Fields("Fees").Value + val(txtAmount.Text)
    .Update()
    .Close()
End With
于 2013-06-01T10:34:45.083 に答える