Public stringCmbName As String Public stringCmbNo As String Private Sub cmdDelete_Click() '删除按钮 Dim response response = MsgBox("如果无误,请确认!", vbOKCancel, "删除") If response = 1 Then RS.Delete If RS.EOF Then RS.MoveLast Else RS.MoveNext
Else Exit Sub End If End SubPrivate Sub cmdMove_Click(Index As Integer) '记录移动 With RS Select Case Index Case 0: If .BOF Then .MoveFirst .MovePrevious Case 1: If .EOF Then .MoveLast .MoveNext Case 2: .MoveLast Case 3: .MoveFirst End Select End With End SubPrivate Sub CmdSerach_Click() '查询按钮 Dim sel As StringstringCmbName = CmbName.Text stringCmbNo = CmbNo.TextIf stringCmbName = "" Or stringCmbName = "姓名" Then If stringCmbNo = "" Or stringCmbNo = "编号" Then MsgBox "没有查询条件,请选择!", , "查询" Exit Sub Else sel = "select * from teachers where 编号='" & stringCmbNo & "'" End If Else sel = "select * from teachers where 姓名='" & stringCmbName & "'" End IfRS.Close RS.Open sel, DB, adOpenKeyset, adLockOptimistic Set txtName.DataSource = RS Set txtNo.DataSource = RS Set CmbSex.DataSource = RS Set CmbPro.DataSource = RS Set CmbDepartment.DataSource = RS Set txtSitu.DataSource = RS Set txtPassword.DataSource = RS End SubPrivate Sub Form_Load() Call DataBase Do While Not RS1.EOF CmbName.AddItem RS1("姓名") RS1.MoveNext Loop Do While Not RS2.EOF CmbNo.AddItem RS2("编号") RS2.MoveNext Loop Call SetRsEnd SubSub SetRs() Set RS = New ADODB.Recordset RS.Open "teachers", DB, adOpenKeyset, adLockOptimistic Set txtName.DataSource = RS txtName.DataField = "姓名" Set txtNo.DataSource = RS txtNo.DataField = "编号" Set CmbSex.DataSource = RS CmbSex.DataField = "性别" Set CmbPro.DataSource = RS CmbPro.DataField = "职称" Set CmbDepartment.DataSource = RS CmbDepartment.DataField = "所在系" Set txtSitu.DataSource = RS txtSitu.DataField = "基本情况" Set txtPassword.DataSource = RS txtPassword.DataField = "密码" End Sub这个就是,我在删除中间和第一条记录的时候,提示eof 或 bof有一个为真或者当前记录已被删除的错误
Public stringCmbNo As String
Private Sub cmdDelete_Click() '删除按钮
Dim response
response = MsgBox("如果无误,请确认!", vbOKCancel, "删除")
If response = 1 Then
RS.Delete
If RS.EOF Then
RS.MoveLast
Else
RS.MoveNext
End If
txtName = ""
txtNo = ""
CmbSex = ""
CmbPro = ""
CmbDepartment = ""
txtSitu = ""
txtPassword = ""
Else
Exit Sub
End If
End SubPrivate Sub cmdMove_Click(Index As Integer) '记录移动
With RS
Select Case Index
Case 0:
If .BOF Then .MoveFirst
.MovePrevious
Case 1:
If .EOF Then .MoveLast
.MoveNext
Case 2:
.MoveLast
Case 3:
.MoveFirst
End Select
End With
End SubPrivate Sub CmdSerach_Click() '查询按钮
Dim sel As StringstringCmbName = CmbName.Text
stringCmbNo = CmbNo.TextIf stringCmbName = "" Or stringCmbName = "姓名" Then
If stringCmbNo = "" Or stringCmbNo = "编号" Then
MsgBox "没有查询条件,请选择!", , "查询"
Exit Sub
Else
sel = "select * from teachers where 编号='" & stringCmbNo & "'"
End If
Else
sel = "select * from teachers where 姓名='" & stringCmbName & "'"
End IfRS.Close
RS.Open sel, DB, adOpenKeyset, adLockOptimistic
Set txtName.DataSource = RS
Set txtNo.DataSource = RS
Set CmbSex.DataSource = RS
Set CmbPro.DataSource = RS
Set CmbDepartment.DataSource = RS
Set txtSitu.DataSource = RS
Set txtPassword.DataSource = RS
End SubPrivate Sub Form_Load()
Call DataBase
Do While Not RS1.EOF
CmbName.AddItem RS1("姓名")
RS1.MoveNext
Loop
Do While Not RS2.EOF
CmbNo.AddItem RS2("编号")
RS2.MoveNext
Loop
Call SetRsEnd SubSub SetRs()
Set RS = New ADODB.Recordset
RS.Open "teachers", DB, adOpenKeyset, adLockOptimistic
Set txtName.DataSource = RS
txtName.DataField = "姓名"
Set txtNo.DataSource = RS
txtNo.DataField = "编号"
Set CmbSex.DataSource = RS
CmbSex.DataField = "性别"
Set CmbPro.DataSource = RS
CmbPro.DataField = "职称"
Set CmbDepartment.DataSource = RS
CmbDepartment.DataField = "所在系"
Set txtSitu.DataSource = RS
txtSitu.DataField = "基本情况"
Set txtPassword.DataSource = RS
txtPassword.DataField = "密码"
End Sub这个就是,我在删除中间和第一条记录的时候,提示eof 或 bof有一个为真或者当前记录已被删除的错误