Option Explicit
Dim cnn As ADODB.Connection
Dim rs  As ADODB.RecordsetPrivate Sub Cmdcancel_Click()
 rs.CancelUpdate
 display
End SubPrivate Sub Cmddelete_Click()
Dim i As String
i = MsgBox("你确定要删除此记录吗?", vbYesNo + vbInformation, "删除记录")
If i = vbYes Then
rs.Delete
rs.MovePrevious
If rs.BOF Then rs.MoveFirst
display
End If
End SubPrivate Sub Cmdexit_Click()
Unload Me
End SubPrivate Sub cmdfind_Click()
Dim cnn2 As ADODB.Connection
Dim rs2 As ADODB.Recordset
Dim s As String
Set cnn2 = New ADODB.Connection
s = "select * from data_1 where id='" & Txtid.Text & "' ;"
cnn2.Provider = "Microsoft.Jet.OLEDB.4.0"
cnn2.Open "D:\VB98\学生信息\data.mdb"
Set rs2 = New ADODB.Recordset
rs2.Open s, cnn2, adOpenDynamic
'If rs2.EOF Or rs2.BOF Then MsgBox "无效ID号": Exit Sub
 'Do While Not rs2.EOF
  'If s = rs2!id Then
  'Txtid = rs2!id
  ' txtname = rs2!Name
    'Txtadd = rs2!Add
    'Exit Do
   ' End If
    'rs2.MoveNext
    'Loop
    'If rs2.EOF Then
    'Txtid = ""
    'txtname = ""
    'Txtadd = ""
   ' MsgBox "没找到!"
   If rs2.EOF Then
  MsgBox "无效id"
Else
   Txtid = rs2.Fields("id")
   txtname = rs2.Fields("name")
End If
rs.Close  
   End SubPrivate Sub Txtqdd_Change()End SubPrivate Sub Cmdsave_Click()
rs.AddNew
rs!id = Txtid
rs!Name = txtname
rs!Add = Txtadd
rs.Update
End SubPrivate Sub Codadd_Click()
rs.AddNew
Txtid = ""
txtname = ""
Txtadd = ""
Txtid.SetFocus
End SubPrivate Sub Command1_Click()
rs.MoveFirst
display
End SubPrivate Sub Command2_Click()
rs.MovePrevious
If rs.BOF Then
MsgBox "到第一条记录"
rs.MoveFirst
End If
display
End SubPrivate Sub Command3_Click()
rs.MoveNext
If rs.EOF Then
MsgBox "到最后一条记录"
rs.MoveLast
End If
display
End SubPrivate Sub Command4_Click()
rs.MoveLast
display
End Sub
'激活窗口
Private Sub Form_Activate()
display
End Sub
'加载窗口
Private Sub Form_Load()
Dim addFlag As Boolean
Set cnn = New ADODB.Connection
Set rs = New ADODB.Recordset
cnn.Provider = "Microsoft.Jet.OLEDB.4.0"
cnn.Open "D:\VB98\学生信息\data.mdb"
rs.Open "data_1", cnn, adOpenDynamic, adLockBatchOptimistic, adCmdTable
addFlag = False
End Sub
'显示记录
Private Sub display()
 Txtid = rs!id
 txtname = rs!Name
 Txtadd = rs!Add 
End Sub
'卸载窗体
Private Sub form_unload(cancel As Integer)
cnn.Close
End Sub不能find(查找)不能保存```

解决方案 »

  1.   

    你应该去找一下这方面的程序!!!“查找”不是用循环一个个去找的。 rs.find就可以查找了。 还有就是你可以用绑定控件,比如text1.datasource和datafield设定一下,不用一个个去赋值。新增里面写addnew,保存的代码就不用再addnew了。保存之所以不能保存,也是因为你需要再最后rs.updatebatch一下。你的删除代码估计也不能删除掉记录。你需要在delete后,也要加个updatebatch。否则表面上删除了,数据库里实际还有的。