如图所示,要求是TEXT没有连接部件,而是单独由一个adodc1的部件来控制整个系统,SQL里面的表名称是li13241214。

解决方案 »

  1.   

    Private Sub Command1_Click()  '上一条
        Adodc1.Recordset.MovePrevious
        If Adodc1.Recordset.BOF Then
        Adodc1.Recordset.MoveFirst
        MsgBox "已到第一条!", vbOKOnly
        End If
    End Sub
    Private Sub Command2_Click()   '下一条
        Adodc1.Recordset.MoveNext
        If Adodc1.Recordset.EOF Then
        Adodc1.Recordset.AddNew
        End If
        If Len(Text1.Text) = 0 And Len(Text2.Text) = 0 And Len(Text1.Text) = 0 Then
        Command1.Enabled = False
        Command2.Enabled = False
        End If
        Text1.SetFocus
    End Sub
    Private Sub Command3_Click()    '新增
    Adodc1.RecordSource = "select * from li13241214"
    Adodc1.Refresh
    End Sub
    Private Sub Command4_Click()    '删除
    SendKeys vbKeyDelete
    End Sub
    Private Sub Command5_Click()      ' 保存
    If Len(Text1.Text) = 0 Then
    MsgBox "代码不能为空!", vbOKOnly
    Else
    Adodc1.Recordset.Update
    Command1.Enabled = True
    Command2.Enabled = True
    et.Update
    x = 0
    End Sub
    Private Sub Command6_Click()       ' 退出
        Adodc1.Recordset.CancelUpdate
        Unload Me
    End SubPrivate Sub Form_Load()
    Adodc1.RecordSource = "select * from li13241214"
    Adodc1.RefreshText1.Text = ""
    Text2.Text = ""
    Text3.Text = ""
    Text4.Text = ""
    If Adodc1.Recordset.RecordCount > 0 Then
       Text1.Text = Adodc1.Recordset.Fields("代码")
       Text2.Text = Adodc1.Recordset.Fields("站名")
       Text3.Text = Adodc1.Recordset.Fields("里程")
       Text4.Text = Adodc1.Recordset.Fields("备注")
    End If
    x = 0
    End Sub
      

  2.   

    有六个command,1-6分别是上一条、下一条、新增、删除、保存、退出。
    因为上传不了图片,没办法,求大神解答,谢谢、。
      

  3.   

    首先在窗体的通用部分声明二个变量与一个动态数组
    Dim KK As Long, SID() As Long, XX As Integer
    在窗体启动事件中对变量XX与数组SID赋值
    Private Sub Form_Load()
    Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\信息表.mdb;Persist Security Info=False"
    Adodc1.RecordSource = "Select * From 长途车信息"
    Adodc1.Refresh
    XX = Adodc1.Recordset.RecordCount   '得到数据表的总记录
    ReDim SID(1 To XX)    '为数组设置下标
    Do While Not Adodc1.Recordset.EOF
    I = I + 1
    SID(I) = Adodc1.Recordset.Fields("ID")   '给数组SID赋值,是所有记录的ID,ID字段是自动编号字段
    Adodc1.Recordset.MoveNext
    Loop
    KK = 1    '给变量KK初值
    End Sub
    对不起,有事要出去,一会再给你其他代码。
      

  4.   

    下一条的代码,KK是检测记录的变量,SID(KK) 是该记录的ID,只有检测到具体记录,才能显示出来。上一条与下一条基本一样,无非是   KK = KK - 1 而已。
    Private Sub Command2_Click()
    '下一条
      KK = KK + 1
      If KK > XX Then KK = XX: MsgBox "已经是最后一条了!"
      Adodc1.RecordSource = "Select * From 长途车信息 Where ID=" & SID(KK) & ""
      'SID(KK) 是得到记录的ID号,这样才能查询到这个记录
      Adodc1.Refresh
    Text1.Text = Adodc1.Recordset.Fields("编号")
    Text2.Text = Adodc1.Recordset.Fields("站名")
    Text3.Text = Adodc1.Recordset.Fields("里程")
    Text4.Text = Adodc1.Recordset.Fields("备注")
    End Sub
    新增记录的代码如下,修改记录与新增基本一样,无非SQL语句不同,应该是  Where ID=" & SID(KK) & " ,因为修改的是需要修改的记录。
    Private Sub Command3_Click()
    '新增
    If MsgBox("你确实要新增一条信息吗?", 33, "新增确认!") = 1 Then
        If Text1.Text = "" Then
            MsgBox "你没有输入编号,请输入!"
            Exit Sub
        End If
        If Text2.Text = "" Then
            MsgBox "你没有输入站名,请输入!"
            Exit Sub
        End If
        If Text3.Text = "" Then
            MsgBox "你没有输入里程,请输入!"
            Exit Sub
        End If
        If Text4.Text = "" Then
            MsgBox "你没有输入备注,请输入!"
            Exit Sub
        End If
    Adodc1.RecordSource = "Select * From 长途车信息 Where 编号='" & Text1.Text & "' or 站名='" & Text2.Text & "' "
    Adodc1.Refresh
    If Adodc1.Recordset.EOF = True Then  '如果 Adodc1.Recordset.EOF = True,说明编号与站名相同的记录不存在,可以新增。
    Adodc1.Recordset.AddNew
     Adodc1.Recordset.Fields("编号") = Text1.Text
     Adodc1.Recordset.Fields("站名") = Text2.Text
     Adodc1.Recordset.Fields("里程") = Text3.Text
     Adodc1.Recordset.Fields("备注") = Text4.Text
    Adodc1.Recordset.Update
    MsgBox "祝贺你!一条信息成功添加!"
    Unload Me
    Form1.Show
    Else                                 '如果 Adodc1.Recordset.EOF = False,说明编号与站名相同的记录存在,不能新增。
    MsgBox "对不起!这条信息已经存在,不能再次添加!"
    Text1.Text = ""
    Text2.Text = ""
    Text3.Text = ""
    Text4.Text = ""    '将文本框清空,以便再次添加
    End If
    End If
    End Sub
    最后是删除记录,删除记录的SQL语句与修改记录系统的
    Private Sub Command4_Click()
    '删除
    If MsgBox("你确实要删除这条信息吗?", 33, "删除确认!") = 1 Then
    Adodc1.RecordSource = "Select * From 长途车信息 Where ID=" & SID(KK) & ""
    Adodc1.Refresh
    Adodc1.Recordset.Delete
    MsgBox "祝贺你!这条信息成功删除!"
    Unload Me
    Form1.Show
    End If
    End Sub
    下面是界面:   你修改为你的数据库,修改一下字段名称就可以了。